本文主要是介绍JAVA学习日记初涉SWING,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
在读完SWING 这章后,自己交的作业
具体实现以上布局 ,练习了一些SWING语句
以下代码:
import java.awt.*;
import javax.swing.*;
import java.awt.event.*;
public class MyDialog extends JFrame {
public MyDialog(){
String[] text={"红","绿","蓝"};
Container ct=getContentPane();
setTitle("测试窗口");
//ct.setLayout(new GridLayout(4,2));
//ct.add(new JButton("Button"));
//JLabel jl=new JLabel("请选择颜色:",JLabel.LEFT);
JPanel panel1=new JPanel(new GridLayout());
JPanel panel2=new JPanel(new GridLayout(1,2));
JPanel panel3=new JPanel(new GridLayout(1,2));
JComboBox jc=new JComboBox(text);
JCheckBox jc2=new JCheckBox("男",true);
JCheckBox jc3=new JCheckBox("女",false);
final JButton jb1= new JButton("点我");
final JButton jb2= new JButton("不点我");
jb1.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e){
jb1.setText("不点我");
jb2.setText("点我");
}
});
jb2.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e){
jb1.setText("点我");
jb2.setText("不点我");
}
});
ct.add(BorderLayout.NORTH,panel1);
panel1.add(jc);
ct.add(BorderLayout.CENTER,panel2);
panel2.add(jc2);
panel2.add(jc3);
ct.add(BorderLayout.SOUTH,panel3);
panel3.add(jb1); //JFrame默认的布局管理器为BorderLayout,
panel3.add(jb2); //其默认添加在BorderLayout.CENTER上
//ct.setBackground(Color.black);
setSize(300,200);
setVisible(true);//显示放上面是有时候不显示按钮.
setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
}
public static void main(String[] args) {
// TODO 自动生成的方法存根
new MyDialog();
}
}
————————
在实现中 发现面板Panel1 总是显示不出来 最后砸后原因是
JFrame默认的布局管理器为BorderLayout,其默认添加在BorderLayout.CENTER上
这篇关于JAVA学习日记初涉SWING的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!