- 1、本文档共2页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
一点java界面设计的经验.pdf
1.JList
1.JList
11..JJLLiisstt添加元素
JList 类本身没有添加元素的功能,需要借助于ListModel。ListModel 是一个接口,
DefaultListModel类已经实现了这一接口,使用起来很方便。下面是简单的实现:
DefaultListModellm=newDefaultListModel();
JList l=newJList(lm);
lm.addElement(Objectobj);
上面的代码把元素obj添加到了列表l上。
除了添加元素的功能外,DefaultListModel 还提供了删除元素、插入元素等方法,具体
请见API 文档。
如果要处理通过单击选择一个 JList 元素的事件,可以添加ListSelectionListener,该类
忽略了鼠标出入列表和按下、松开鼠标等事件,直接处理选择一项元素这样有意义的事件。
2.
2.
22..带滚动条的图片
设计过程中,我被要求在窗口上显示很大的图片。由于图片太大,窗口无法完全显示。
更糟的是,一般组件超出窗口后,事先添加的滚动条就会出现,而在面板上绘制的图片就像
背景一样,内容超出了窗口也不会出现滚动条。后来我在网上找到了解决办法,其实很简单,
就是把图片放在标签(JLable)上,再把标签放在窗口上。
3.
3.
33..文件选择器
就是用来查看系统目录的一个小窗口,在选择文件、保存文件和安装软件时选择安装路
径中都会用到。
原本以为文件选择器要自己实现,很苦恼,因为不知道怎么获得和操作系统的目录。后
来发现原来 java 已经提供了一个现成的类用以实现这一功能,这个类就是文件选择器
(JFileChooser)。这个类常常和文件过滤器(FileFilter)配合,用以筛选特定后缀名的文件。
请看下面一段代码:
JFileChooserc=newJFileChooser();
FileNameExtensionFilter f = new FileNameExtensionFilter(JPG GIF Images, jpg,
gif);
c.setFileFilter(f);
上面的代码实现了一个带有文件过滤器的文件选择器,该文件选择器上只显示后缀名为
.jpg和gif的文件供用户选择。
4.
4.
44..组合框的实现
组合框是一个轻量级容器,用以盛放一组有关联的组件,并用带有标题的边框围住,是
个很常见的组件。
java 没有提供专门的组合框组件,而是通过给面板添加边框和标题来实现。下面是一种
实现的方法:
JPanelp=newJPanel();
p.setBorder(BorderFactory.createTitledBorder(标题));
5.
5.
55..关于滚动条
在容器中添加滚动条后,要想在组件超出容器时显示滚动条的话,容器的布局方式不能
设为null。因为不知道这一点,导致我在设计时兜了个大圈,回到起点时才发现是布局方式
有问题。
如果担心采用布局方式时组件会布满整个窗口,那么可以使用面板作为中间组件,就可
以解决这个问题了。
6. (JTable)
6. (JTable)
66..表格((JJTTaabbllee))的使用
表格可以方便且条理清晰地显示大量数据,使用起来很方便。表格是个二维表,二维表
有行和列的结构。使用时会发现 JTable 提供的方法并不全面,例如不能增删行和列。如果
需要使用这些功能,那么就需要TableModel。TableModel 是个接口,DefaultTableModel 类
实现了这一接口,使用起来很方便。如:
DefaultTableModeltm=new DefaultTableModel();
JTablet=newJTable(tm);
这样一来就可以使用tm进行增删行和列的操作了,具体方法见API 文档。
7.
7.
77..刷新组件
程序运行时,经常会改变组件的内容。我们希望组件的内容改变后,程序的界面也能相
应变化。要实现这一功能,只需使用方法updateUI()就行了。就我所知,所有组件都有这一
方法,估计是从很初级的类中继承来的。例如,我在网上看到很多人问,面板内容改变后,
界面怎么立即刷新,这其实很简单,如:
JPanelp=newJPanel();
当面板p上的内容变化时,就调用
您可能关注的文档
- 《机械精度设计与检测基础》A卷试题2009.pdf
- 《框架结构房屋的施工质量控制》张顺晨.doc
- 《民用建筑工程室内环境污染控制规范》GB503252010.pdf
- 《水工建筑物》课程自学要求及学习指导.doc
- 《汉语学习与研究》现在废除简化字不得人心.pdf
- 《洁净厂房设计规范》GB500732001.doc
- 《海上油(气)田开发工程环境保护设计规范》SYT100472003.pdf
- 《混凝土结构加固设计规范》GB503672006.doc
- 《清洁生产评价指标体系编制通则》(试行稿).pdf
- 《港口水工建筑物》课后题答案.doc
- 第12课 大一统王朝的巩固 课件(20张ppt).pptx
- 第17课 君主立宪制的英国 课件.pptx
- 第6课 戊戌变法 课件(22张ppt).pptx
- 第三章 物态变化 第2节_熔化和凝固_课件 (共46张ppt) 人教版(2024) 八年级上册.pptx
- 第三章 物态变化 第5节_跨学科实践:探索厨房中的物态变化问题_课件 (共28张ppt) 人教版(2024) 八年级上册.pptx
- 2025年山东省中考英语一轮复习外研版九年级上册.教材核心考点精讲精练(61页,含答案).docx
- 2025年山东省中考英语一轮复习(鲁教版)教材核心讲练六年级上册(24页,含答案).docx
- 第12课近代战争与西方文化的扩张 课件(共48张ppt)1.pptx
- 第11课 西汉建立和“文景之治” 课件(共17张ppt)1.pptx
- 唱歌 跳绳课件(共15张ppt内嵌音频)人音版(简谱)(2024)音乐一年级上册第三单元 快乐的一天1.pptx
文档评论(0)