62,614
社区成员
发帖
与我相关
我的任务
分享
import java.awt.Container;
import java.awt.Frame;
import java.awt.GridLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
import javax.swing.JButton;
import javax.swing.JCheckBox;
import javax.swing.JColorChooser;
import javax.swing.JFrame;
import javax.swing.JPanel;
public class Text extends JFrame{
JCheckBox a = new JCheckBox("1");
JColorChooser j = new JColorChooser();
Frame f = new Frame("text");
JPanel p= new JPanel(new GridLayout(4,1));
public void lantchFrame(){
f.addWindowListener(new WindowAdapter(){
public void windowClosing(WindowEvent e){
System.exit(0);
}
});
p.add(a);
f.add(p);
a.addActionListener(new MyListener());
f.pack();
f.setSize(320,240);
f.setVisible(true);
}
class MyListener implements ActionListener {
public void actionPerformed(ActionEvent e) {
if(a.isSelected()){
JButton jb3 = new JButton("jb3");
p.add(jb3);
p.updateUI();
}
}
}
public static void main(String [] args){
Text t=new Text();
t.lantchFrame();
}
}
//这是我从网上找的,测试可用,不过我找不出上面程序哪里错了- -
import java.awt.Container;
import java.awt.FlowLayout;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
public class Ss extends JFrame {
Container con = this.getContentPane();
JButton jb1 = new JButton("jb1");
JButton jb2 = new JButton("jb2");
JLabel jl1 = new JLabel("jl1");
FlowLayout gly = new FlowLayout();
JPanel jp = new JPanel(gly);
public Ss() {
con.add(jp);
jp.add(jb1);
jp.add(jb2);
MyListener ml = new MyListener();
jb1.addMouseListener(ml);
this.setSize(300, 200);
this.setVisible(true);
}
private class MyListener extends MouseAdapter {
public void mouseClicked(MouseEvent e) {
try {
JButton jb3 = new JButton("jb3");
jp.add(jb3);
jp.updateUI();//可以正常显示
} catch (Exception ex) {
ex.printStackTrace();
}
}
}
public static void main(String s[]) {
Ss sss = new Ss();
sss.setVisible(true);
}
}
try {
JButton jb3 = new JButton("jb3");
jp.add(jb3);
jp.updateUI();//可以正常显示
} catch (Exception ex) {
ex.printStackTrace();
}
public void actionPerformed(ActionEvent e) {
if(a.isSelected()){
JButton jb3 = new JButton("jb3");
p.add(jb3);
p.updateUI();
}
}
跟楼主的if()循环不协调;if()循环只做一次