📄 90c940a77a06001c178a81f66604f71f
字号:
package deng;
import java.awt.Checkbox;
import java.awt.Frame;
import java.awt.*;
import java.awt.event.ItemEvent;
import java.awt.event.ItemListener;
import java.awt.event.MouseAdapter;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
import javax.swing.*;
import javax.swing.plaf.basic.BasicComboBoxUI.ItemHandler;
public class MainWindow {
/**
* @param args
*/
CheckboxGroup cbg=new CheckboxGroup();
Checkbox chb=new Checkbox("默认",cbg,true);
Checkbox chb2=new Checkbox("自定义",cbg,false);
JPanel panel2=new JPanel();//由于在内部类中要用到故单独将其作为全局变量
public static void main(String[] args) {
// TODO Auto-generated method stub
MainWindow mainWin=new MainWindow();
mainWin.init();
}
public void init(){
JFrame frame=new JFrame("网络防火墙配置");
frame.setBounds(500, 200, 300, 400);
frame.setResizable(false);
//frame.setBackground(Color.ORANGE);
frame.setLayout(null);//手动指定各个组件的位置
JLabel label=new JLabel();
label.setText("请选择设置方式");
label.setBounds(10, 10, 100, 20);
chb.setBounds(110, 10, 50,20);
chb.addItemListener(new MyItemListener());
chb2.setBounds(170, 10, 50,20);
chb.addItemListener(new MyItemListener());
// 第一个panel
JPanel panel=new JPanel();
panel.setLayout(null);
panel.setBounds(0, 0, 300, 30);
panel.setBackground(Color.white);
panel.add(label);
panel.add(chb);
panel.add(chb2);
panel.setEnabled(false);
// 第二个panel
panel2.setLayout(null);
panel2.setBounds(0, 30, 300, 280);
JLabel label2_1=new JLabel("信任的设备:");
label2_1.setBounds(10, 30, 90, 20);
JLabel label2_2=new JLabel("允许的服务:");
label2_2.setBounds(10, 110, 90, 20);
JPanel panel2_1=new JPanel();
panel2_1.setLayout(null);
panel2_1.setBounds(100, 20, 190, 50);
panel2_1.setBackground(Color.white);
Checkbox cbx0=new Checkbox("enh0");
Checkbox cbx1=new Checkbox("enh1");
cbx0.setBounds(0,0,50,15);
cbx1.setBounds(0,16,50,10);
panel2_1.add(cbx0);
panel2_1.add(cbx1);
JPanel panel2_2=new JPanel();
panel2_2.setLayout(null);
panel2_2.setBounds(100, 95, 190, 225);
panel2_2.setBackground(Color.white);
panel2.add(label2_1);
panel2.add(panel2_1);
panel2.add(label2_2);
panel2.add(panel2_2);
Checkbox cb=cbg.getSelectedCheckbox();
if(cb!=null)
if(cb.getLabel().equals("默认"))
{
System.out.print(cb.getLabel());
panel2.setEnabled(false);
panel2_1.setEnabled(false);
panel2_2.setEnabled(false);
}
// 第三个panel
JPanel panel3=new JPanel();
panel3.setLayout(null);
panel3.setBounds(0, 320, 300, 80);
panel3.setBackground(Color.white);
JButton jb1=new JButton("确定");
JButton jb0=new JButton("取消");
jb1.setBounds(80, 15, 80, 25);
jb0.setBounds(180, 15, 80,25);
panel3.add(jb1);
panel3.add(jb0);
frame.add(panel);
frame.add(panel2);
frame.add(panel3);
frame.setVisible(true);
}
//内部类,单选按钮的监听器
class MyItemListener implements ItemListener
{
public void itemStateChanged(ItemEvent e) {
// TODO Auto-generated method stub
Checkbox cb=cbg.getSelectedCheckbox();
if(cb!=null)
if(cb.getLabel().equals("默认"))
{
panel2.setEnabled(false);
}
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -