- 1、本文档共51页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
java,swing,控件命名规范
篇一:java中的swing常用组件讲解
在Java1.0中,已经有一个用于GUI编程的类库AWT,称之为抽象窗口工具箱。遗憾的是,AWT中的组件(例如按钮,类名为Button)在实现中使用了本地代码(Native Code),这些组件的创建和行为是由应用程序所在平台上的本地GUI工具来处理的。因此,AWT组件要在不同的平台上提供给用户一致的行为就受到了很大的限制。同时,AWT组件中还存在很多bug,这就使得使用AWT来开发跨平台的GUI应用程序困难重重。
1996年,SUN公司和Netsacpe公司在一个称为Swing的项目中合作完善了Netsacpe公司原来开发的一套GUI库,也就是现在所谓的Swing组件。Swing组件和原来的AWT组件完全不同,最大的区别就是Swing组件的实现中没有使用本地代码,这样对底层平台的依赖型就大为降低,并且可以给不同平台的用户一致的感觉。此外,和原来的AWT相比,Swing中提供了内容更多、使用更为方便的组件。
在阅读一些书籍时,常会遇到名词JFC(Java Foundation Class)。JFC的概念是在1997年的JavaOne开发者大会上首次提出的,是指用于构建GUI的一组API。实际上,Swing只是JFC的一部分,其它的还有二维图形(Java 2D)API以及拖放(Drag and Drop)API等等。Swing并不是完全取代了AWT,Swing只是使用更好的GUI组件(如JButton)代替AWT中相应的GUI组件(如Button),并且增加了一些AWT中原来所没有的GUI组件。并且,Swing仍使用AWT 1.1的事件处理模型。
虽然现在AWT组件仍得到支持,但是建议在你的应用程序中尽量使用Swing组件和1.1的事件模型。
1.标签 (JLabel)
标签 (JLabel)通常是用来标识另外一个组件的含义。以在标签上显示文字、图象或是文字图象的组合。
JLabel labText=new JLabel(“文本标签”);
labText.setText(文本标签);
ImageIcon icon = new ImageIcon(image/greenflag20.gif);
JLabel labImage=new JLabel(icon);
labImage.setIcon(icon);
2.密码框 (JPasswordField)
密码框实际上是一种特殊类型的文本框,用户可以向其中输入文本并加以编辑。和文本框不同的是,向密码框中输入文本时,显示的不是实际输入的文本,而是特殊的回显字符(通常是#39;*#39;)。可以使用setEchoChar(char c)方法来改变缺省的回显字符。
需要注意的是,取得文本框中的文本时,使用方法getText(),该方法返回的是一个String类型的对象;而要取得密码框中的文本,使用方法getPassword(),该方法返回的是一个char数组。
例如,创建了一个密码框:
JPasswordField txtPwd=new JPasswrodField(20);
设定该密码框的回显字符为#39;##39;:
txtPwd.setEchoChar(#39;##39;);
取得密码框中的内容:
char []pwd=txtPwd.getPassword();
也可以方便地将char数组转化为String类型的对象:
String pwdStr=new String(txtP.getPassword());
3.菜单
(1)菜单也是一种常用的GUI组件,菜单采用的是一种层次结构,最顶层是菜单栏(JMenuBar);在菜单栏中可以添加若干个菜单(JMenu),每个菜单中又可以添加若干个菜单选项(JMenuItem)、分隔线(Separator)或是菜单(称之为子菜单)。
(2)构建应用程序的菜单时,先创建一个菜单栏:
JMemuBar menuBar=new JMenuBar();
通常使用框架的setJMenuBar(JMenuBar aMenuBar)方法将菜单栏置于框架中:frame.setJMenuBar(menuBar);
随后,创建所需要的各菜单并逐个添加到菜单栏中,例如:
JMenu menuDBAccount=new JMenu(电表出帐(C));
...
JMenu menuSysConfig=new JMenu(系统设置(X));
menuBar.add(menuDBAccount);
...
menuBar.add(menuSysConfig);
最后,向各个菜单中添加菜单选项、分隔线或是子菜单,如图所示的系统
文档评论(0)