您的位置:首页 > 其它

非容器组件

2016-06-09 15:18 267 查看
通过几行代码,给大家介绍一下非容器组件。



大家在这里也看到了我说的是创建一个单选框,但是却依旧可以选中两个,而且JRadioButton类也没有选错,这是为什么呢?

原因如下:



完整代码如下:

import javax.swing.*;

public class Demo{
public static void main(String[] args){
JFrame frame = new JFrame("窗口");
//创建一个面板
JPanel panel = new JPanel();
frame.add(panel);
//创建一个标签
JLabel label = new JLabel("姓名");
panel.add(label);       //添加到面板上,如果添加到窗口上,会一一覆盖掉
//创建文本框输入框
JTextField textfield = new JTextField(9);
panel.add(textfield);       //添加文本输入框到面板上
//创建一个单选框
JRadioButton radiobutton1 = new JRadioButton("男");
JRadioButton radiobutton2 = new JRadioButton("女");
panel.add(radiobutton1);
panel.add(radiobutton2);
ButtonGroup buttongroup = new ButtonGroup();        //如果是单选框必须要进行分组,同一个组的单选框只能选择其中的一个
buttongroup.add(radiobutton1);      //这样之后就成为了真正的单选框了
buttongroup.add(radiobutton2);
//创建一个下拉框
Object[] arr = {"苹果","香蕉","大鸭梨","桃","李子"};
JComboBox combobox = new JComboBox(arr);
panel.add(combobox);
//创建一个复选框
JCheckBox checkbox1 = new JCheckBox("Java");
JCheckBox checkbox2 = new JCheckBox("C");
JCheckBox checkbox3 = new JCheckBox("C#");
JCheckBox checkbox4 = new JCheckBox("Python");
panel.add(checkbox1);
panel.add(checkbox2);
panel.add(checkbox3);
panel.add(checkbox4);
//创建多行文本框
JTextArea textarea = new JTextArea(5,20);
textarea.setLineWrap(true);     //设置自动换行
panel.add(textarea);

frame.setBounds(300,300,400,300);
frame.setVisible(true);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

}
}


关键代码截图:



运行结果为:



还有一个这样的问题,在很多场景,单选框以及复选框等,都会有初始已选项,该如何设置呢?



如果都设置为true呢?



哎呀,一激动忘了一点,大家看这样几行代码:



没错这就是传说中的密码框,那*号可不是大努自己打上去的哦。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息