博为峰Java技术文章 ——JavaSE Swing JComponent类II

博为峰小博老师:

JComponent类的一些特性。其实它的特性非常多,其中有9大特性尤其显著。

Tool tips

Tool tips就是工具提示功能,通过在setToolTipText方法中指定字符串,可以为一个组件提供一些帮助。当以标停留在组件上的时候,指定的字符串将出现在该组件的附近。用下面一个实例来说明它的用法,其代码如下:

/**

*这段代码主要介绍如何为组件添加工其提示功能

*/

publicclassToolTips {

staticintwidth=300;

staticintheight=200;

publicstaticvoidmain(String args[]){

JFrame jf=newJFrame("Toll tips工具提示功能测试");

jf.setSize(width,height);

jf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

JPanel contentPane=newJPanel();

JButton jb1=newJButton("确定");

JButton jb2=newJButton("取消");

jb1.setToolTipText("这是确定按钮!!!");

jb2.setToolTipText("这是取消按钮!!!");

contentPane.add(jb1);

contentPane.add(jb2);

jf.setContentPane(contentPane);//设置按钮组件的工具提示功能

jf.setVisible(true);

}

}

绘面和边框

当一个Swing的GUI需要绘制自身时,绘制将从需要绘制的最顶层组件开始,依据层次关系绘制。这个过程是由AWT绘制系统来操作的,并且通过Swing重新绘制管理器等来最终完成。

每一个JComponent可以有一个或多个边框。边框是非常有用的对象。虽然边框本身不是组件,但是它们知道如何绘制Swing组件的边界。它们的用途不仅仅局限于绘制线条和漂亮的边界。还可以提供标题和组件周围的空白控件。

要在一个JComponent周围设置边框,可以使用方法setBorder,也可以使用BorderFactory类来创建Swing所提供的绝大多数的边框。下面将通过一个实例来观察它是如何被实现的,其代码如下:

/**

*这段代码主要介绍如何为组件设置边框

*/

publicclassToolTips{

staticintwidth=300;

staticintheight=200;

publicstaticvoidmain(String args[]){

JFrame jf=newJFrame("Toll tips工具提示功能测试");

jf.setSize(width,height);

jf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

JPanel contentPane=newJPanel();

JButton bt1=newJButton("确定");

JButton bt2=newJButton("取消");

bt1.setToolTipText("这是确定按钮!!!");

bt2.setToolTipText("这是取消按钮!!!");

bt1.setBorder(BorderFactory.createLineBorder(Color.RED));//用来设置按钮组件的边框

bt2.setBorder(BorderFactory.createEtchedBorder(Color.YELLOW, Color.RED));

contentPane.add(bt1);

contentPane.add(bt2);

jf.setContentPane(contentPane);

jf.setVisible(true);

}

}

可插人的观感器

所谓的对可插入观感的支持,也就是可以定制自己的桌面、更换新的颜色方案,让窗口系统适应用户的习惯和需要。这种体系结构使得界面可以显示出不同的风格。Swing提供了一些早已被打包成形的观感,包括默认、Motif和Windows的L&F。

自定义属性

JComponent的自定义属性可以将一个或者多个属性与任何JComponent相关联。使用putClientProperty方法和getClientProperty方法可以设置和获得属性值。在现实的开发过程中,会经常使用到这个特性。

layout支持

layout支持也就是对布局的支持功能。

无障碍

无障碍技术就是允许残疾人士使用计算机。如果用户手脚不方便,可以在不使用手的情况下通过无障碍技术来完成工作。

拖曳支持

在程序启动时,组件并没有开启对拖动功能的支持,但在程序窗口的底部有一个复选框允许启用拖动功能。

双缓冲

使用双缓冲技术能改进频繁变化的组件的显示效果。

键绑定

这个特性使组件能够在用户按下键盘特定键后对用户操作进行响应。这样的话,用户既可以通过鼠标来操作,也可以通过键盘的快捷键来操作,从而方便了用户对软件的操作。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 194,761评论 5 460
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 81,953评论 2 371
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 141,998评论 0 320
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 52,248评论 1 263
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 61,130评论 4 356
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 46,145评论 1 272
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 36,550评论 3 381
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 35,236评论 0 253
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 39,510评论 1 291
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 34,601评论 2 310
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 36,376评论 1 326
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 32,247评论 3 313
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 37,613评论 3 299
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 28,911评论 0 17
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 30,191评论 1 250
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 41,532评论 2 342
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 40,739评论 2 335

推荐阅读更多精彩内容