22. februar 2004 - 19:01
Der er
3 kommentarer og 1 løsning
åbne nyt vindue
Hvordan åbner jeg et nyt vindue ved at klikke på en Jbutton? Kan jeg evt. lave det nye vindue som et nyt project og så kalde dette fra knappen? I det nye vindue skal jeg have nogle indtastningsfelter
Annonceindlæg fra Barco
22. februar 2004 - 19:05
#2
Jeg havde dette eksempel liggende: import java.awt.*; import java.awt.event.*; import java.util.*; import javax.swing.*; public class FirstClass extends JFrame implements ActionListener { private JButton callsec; private JLabel data; private SecondClass sec; public FirstClass() { setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); getContentPane().setLayout(new GridLayout(1, 2)); callsec = new JButton("Open Second"); callsec.addActionListener(this); getContentPane().add(callsec); data = new JLabel("Not updated yet"); getContentPane().add(data); pack(); } public void update() { data.setText("I am updated " + new Date()); } public void actionPerformed(ActionEvent ev) { sec = new SecondClass(this); sec.show(); } public static void main(String[] args) { FirstClass f = new FirstClass(); f.show(); } } class SecondClass extends JFrame implements ActionListener { private JButton setfirst; private JButton back; private FirstClass first; public SecondClass(FirstClass first) { this.first = first; setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); getContentPane().setLayout(new GridLayout(2, 1)); setfirst = new JButton("Update"); setfirst.addActionListener(this); getContentPane().add(setfirst); back = new JButton("Close"); back.addActionListener(this); getContentPane().add(back); pack(); } public void actionPerformed(ActionEvent ev) { if (ev.getSource() == setfirst) { first.update(); } if (ev.getSource() == back) { dispose(); } } }