JLabel
类可以用SwingConstants.CENTER
等静态常量作为参数传入构造函数来对标签中的文字进行居中等操作。比如:
add(new JLabel("窗体是BorderLayout布局",SwingConstants.CENTER),BorderLayout.NORTH);
- 注意
JMenuBar
不能直接用add()
加入到窗口中,应该用setMenuBar(menuBar);
方法. - 能触发ActionEvent的事件源可以事先调用
setCommand(String s)
方法设置出发时间后得到的一个ActionCommand
被称作"命令"的字符串. JTextFiled
可以调用setText("");
来实现清空内容操作,没有可以直接调用的方法。JTextArea
对象可以调用setLineWrap(true)
来让文本自动回行;调用setWrapStyleWord(true)
来让文本区以单词为界自动换行。JTextArea
调用addDocumentListener()
时别忘了用getDocument()
将JTextArea
对象转化为Document
对象.例如:
inputArea.getDocument().addDocumentListener(textListener);
- 菜单项设置快捷键(注意大小写)
itemCopy.setAccelerator(KeyStroke.getKeyStroke('c'));
- 当需要设定窗口的背景颜色时,不能直接将该窗口调用
setBackground()
方法,因为窗口本身是一个JFrame
框架,并不是一个实际容器,所以应该先调用getContentPane()
方法再调用setBackground()
方法,以此达到设置背景的目的。 JRadioButton
单选按钮类创建方法为:
JRadioButton button1 = new JRadioButton("A");
JRadioButton button2 = new JRadioButton("B");
要实现单选,必须用ButtonGroup
类创建对象将它们归为一组:
ButtonGroup group = new ButtonGroup();
group.add(button1);
group.add(button2);
- 滚动窗格
JScrollPane
常在JTextArea
中使用:
win.add(new JScrollPane(text));
BoxLayout
布局用Box
类的静态方法createHorizontalBox()
创建一个行式的盒式容器;用createVerticalBox()
创建一个列式的盒式容器,多个容器可以进行嵌套操作,用createHorizontalStrut(int width)
和createVertiStrut(int height)
分别创建水平支撑和垂直支撑,其实就是容器间隙。- 我们知道,在用类实现某个接口时,必须重写该接口所有方法,但有时我们只需要用到某个接口的某几个方法,如果全部重写的话,会很浪费时间,我们可以利用Adapter适配器的思想,Java中也有一些适配器,比如
WindowListener
接口的适配器WindowAdapter
,该适配器为一个实现了该接口的类,类中以空白形式简单实现接口中的抽象方法,所以我们只需要创建一个该适配器的子类,再让子类调用接口中的某些需要用到的方法就好了,我们在编程时,如果遇到很多类需要实现接口中的不同方法,就可以利用适配器的思想,会节省大量的资源。 - 对话框分为有模式和无模式,有模式的被激活时不能激活其他窗口,而无模式的则可以。