假设有两个JFrame, FrameA, FrameB.
FrameA里面有一个toggleButton,我想用这个按钮来控制FrameB的开关.
如何实现?我现在的代码,能实现开,但不知道怎么去关.最好能写一下代码,谢谢.FrameA.classimport java.awt.BorderLayout;
import java.awt.EventQueue;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;import javax.swing.JFrame;
import javax.swing.JToggleButton;
public class FrameA extends JFrame { /**
* Launch the application
* @param args
*/
public static void main(String args[]) {
EventQueue.invokeLater(new Runnable() {
public void run() {
try {
FrameA frame = new FrameA();
frame.setVisible(true);
} catch (Exception e) {
e.printStackTrace();
}
}
});
} /**
* Create the frame
*/
public FrameA() {
super();
setBounds(100, 100, 195, 87);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); final JToggleButton toggleButton = new JToggleButton();
toggleButton.addActionListener(new ActionListener() {
public void actionPerformed(final ActionEvent arg0) {
JToggleButton newtb = (JToggleButton)arg0.getSource();
if(newtb.isSelected())
{
System.out.println("on");
new FrameB();
}else{
System.out.println("off");
}
}
});
toggleButton.setText("JToggleButton");
getContentPane().add(toggleButton, BorderLayout.CENTER);
//
}}FrameB.classimport java.awt.BorderLayout;
import java.awt.EventQueue;import javax.swing.JFrame;
import javax.swing.JLabel;
public class FrameB extends JFrame {
/**
* Create the frame
*/
public FrameB() {
super();
setBounds(100, 100, 179, 80);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); final JLabel label = new JLabel();
label.setText("FrameB");
getContentPane().add(label, BorderLayout.CENTER);
setVisible(true);
//
}
}
FrameA里面有一个toggleButton,我想用这个按钮来控制FrameB的开关.
如何实现?我现在的代码,能实现开,但不知道怎么去关.最好能写一下代码,谢谢.FrameA.classimport java.awt.BorderLayout;
import java.awt.EventQueue;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;import javax.swing.JFrame;
import javax.swing.JToggleButton;
public class FrameA extends JFrame { /**
* Launch the application
* @param args
*/
public static void main(String args[]) {
EventQueue.invokeLater(new Runnable() {
public void run() {
try {
FrameA frame = new FrameA();
frame.setVisible(true);
} catch (Exception e) {
e.printStackTrace();
}
}
});
} /**
* Create the frame
*/
public FrameA() {
super();
setBounds(100, 100, 195, 87);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); final JToggleButton toggleButton = new JToggleButton();
toggleButton.addActionListener(new ActionListener() {
public void actionPerformed(final ActionEvent arg0) {
JToggleButton newtb = (JToggleButton)arg0.getSource();
if(newtb.isSelected())
{
System.out.println("on");
new FrameB();
}else{
System.out.println("off");
}
}
});
toggleButton.setText("JToggleButton");
getContentPane().add(toggleButton, BorderLayout.CENTER);
//
}}FrameB.classimport java.awt.BorderLayout;
import java.awt.EventQueue;import javax.swing.JFrame;
import javax.swing.JLabel;
public class FrameB extends JFrame {
/**
* Create the frame
*/
public FrameB() {
super();
setBounds(100, 100, 179, 80);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); final JLabel label = new JLabel();
label.setText("FrameB");
getContentPane().add(label, BorderLayout.CENTER);
setVisible(true);
//
}
}
import java.awt.BorderLayout;
import java.awt.EventQueue;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;import javax.swing.JFrame;
import javax.swing.JToggleButton;
public class FrameA extends JFrame {
public FrameB fb; /**
* Launch the application
* @param args
*/
public static void main(String args[]) {
EventQueue.invokeLater(new Runnable() {
public void run() {
try {
FrameA frame = new FrameA();
frame.setVisible(true);
} catch (Exception e) {
e.printStackTrace();
}
}
});
} /**
* Create the frame
*/
public FrameA() {
super();
setBounds(100, 100, 195, 87);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); final JToggleButton toggleButton = new JToggleButton();
toggleButton.addActionListener(new ActionListener() {
public void actionPerformed(final ActionEvent arg0) {
JToggleButton newtb = (JToggleButton)arg0.getSource();
if(newtb.isSelected())
{
System.out.println("on");
fb = new FrameB();
}else{
System.out.println("off");
fb.dispose();
fb = null;
}
}
});
toggleButton.setText("JToggleButton");
getContentPane().add(toggleButton, BorderLayout.CENTER);
//
}}