1菜单
import javax.swing.*; import java.awt.*; import java.awt.event.InputEvent; import java.awt.event.KeyEvent; public class test{ public static void main(String args[]){ WindowMenu win=new WindowMenu("fuck me ok?",300,300,300,700); } } class WindowMenu extends JFrame{ JMenuBar menubar1,menubar2;//菜单条 JMenu menu1,subMenu;//菜单 JMenuItem item1,item2;//菜单选项 public WindowMenu(){} public WindowMenu(String s,int x,int y,int w,int h){ init(s); setBounds(300,300,500,600); setVisible(true); setDefaultCloseOperation(DISPOSE_ON_CLOSE); } void init(String s){ setTitle(s); menubar1=new JMenuBar(); menu1=new JMenu("菜单"); subMenu=new JMenu("菜单2"); item1=new JMenuItem("fuck"); item2=new JMenuItem("fuck2"); item1.setAccelerator(KeyStroke.getKeyStroke('A')); item2.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_S,InputEvent.CTRL_MASK)); menu1.add(item1); menu1.addSeparator(); menu1.add(item2); menu1.add(subMenu); subMenu.add(new JMenuItem("me",new ImageIcon("11.jpeg"))); subMenu.add(new JMenuItem("me2",new ImageIcon("11.jpeg"))); menubar1.add(menu1); setJMenuBar(menubar1); } }
2常用组件
import javax.swing.*; import java.awt.*; import java.awt.event.InputEvent; import java.awt.event.KeyEvent; public class test{ public static void main(String args[]){ Component window1=new Component(); window1.setBounds(40,40,500,700); } } class Component extends JFrame{ JTextField text1;//单行文本框 JButton button1;//按钮 JRadioButton radio1,radio2;//单选 JCheckBox checkBox1,checkBox2,checkBox3;//可以多选的选择框 ButtonGroup group1;//配套单选的选择项 JComboBox comBox1;//下拉,用addItem("dddd")加 JTextArea area1;//多行文本区 Component(){ init(); setVisible(true); setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); } void init(){ setLayout(new FlowLayout());//需要一个布局样式 add(new JLabel("文本框1:"));//像注释一样写上文字说明 text1=new JTextField(10); add(text1); add(new JLabel("按钮:")); button1=new JButton("点我"); add(button1); add(new JLabel("选择框:")); checkBox1=new JCheckBox("111111"); checkBox2=new JCheckBox("2222222"); checkBox3=new JCheckBox("333333"); add(checkBox1); add(checkBox2); add(checkBox3); add(new JLabel("单选:")); group1=new ButtonGroup(); radio1=new JRadioButton("nan"); radio2=new JRadioButton("gril"); group1.add(radio1); group1.add(radio2); add(radio1); add(radio2);//不用add(group); add(new JLabel("下拉列表")); comBox1=new JComboBox(); comBox1.addItem("fuck"); comBox1.addItem("me"); comBox1.addItem("ok"); add(comBox1); add(new JLabel("文本区域:")); area1=new JTextArea(3,13); add(new JScrollPane(area1));//一定要 } }
3 常用容器
1)JPanel 面板,可以向里面加组件,默认布局FlowLayout
setLayout(new FlowLayout());//需要一个布局样式 JPanel panel1=new JPanel(); add(new JLabel("fuck")); add(new JLabel("me")); panel1.add(new JLabel("fuck1")); panel1.add(new JLabel("me1")); add(panel1);
2)JScrollPane滚动窗口,只可以添加一个组件,然后可以滚来看这个窗口
setLayout(new FlowLayout());//需要一个布局样式 add(new JLabel("fuck")); add(new JTextArea(3,5)); add(new JLabel("me")); add(new JScrollPane(new JTextArea(4,5)));
3)JSplitPane 分开窗格 JSplitPane(int a,Component b,Component c)a=0是上下,a=1是左右分
add(new JSplitPane(0,new JLabel("fuck"),new JLabel("me")));