Synth的XML配置(1)
Synth的设置需要配置xml文件(如:demo.xml)来实现,因此xml的配置对synth界面的设置非常重要.
1、xml的所有内容都包含在<synth></synth>中,不需要xml版本和语言(即:<?xml version="1.0" encoding="UTF-8"?> 这行不需要)。
2、如果只用<synth></synth>标识,没有其他的配置,界面会出现很多空白(即:synth没有默认值,在xml中没有设置组件的配置,界面经常以空白的方式显示,没有默认的截面,因此在xml中没有组件都要配置)。
3、如果在<synth></synth>标识中没有JTable的配置,若界面中有JTable则出现异常不能正确显示。因此,xml中一定要配置JTable,因为不配置其他组件,Synth会以空白显示;但是不配置JTable,synth不会以空白显示,会出现异常。在xml配置JTable中一定要配置Table.gridColor属性和ENABLED状态,如:
<style id="Table">
<object id="Table_Grid_Color" class="java.awt.Color">
<int>133</int>
<int>181</int>
<int>237</int>
<int>255</int>
</object>
<property key="Table.gridColor" type="idref" value="Table_Grid_Color" />
<state value="ENABLED">
<color type="TEXT_FOREGROUND" value="#000000" />
<color type="TEXT_BACKGROUND" value="#FFFFFF" />
<color type="BACKGROUND" value="#FFFFFF" />
</state>
</style>
<bind style="Table" type="region" key="Table" />
|
配置了这两个属性,显示JTable才不会出现异常。
Synth的XML配置(2)
1、style元素,是设置XML中设置属性的主要标签,设置好后要把属性绑定到某个组件上(或某个范围上)。
bind元素,是主要用于把style绑定到组件上的。
例如:
<style id="b">
<font name="DIALOG" size="12" style="BOLD"/>
</style>
<bind style="b" type="region" key="button"/>
|
style元素中的id属性是style的唯一标识,bind元素中的style对应要绑定的style的id标识;type属性是绑定的类型(范围),我了解的有2个可选值:region和name,若type属性值为region则bind元素中的key属性值为类javax.swing.plaf.synth.region。
java中已经设置定义的属性值,若type属性值为name ,则bind元素中的key属性值为组件在程序中设置的名称值(setName("key"))。
例1:
<style id="b">
<font name="DIALOG" size="12" style="BOLD"/>
</style>
<bind style="b" type="region" key="button"/>
|
bind元素的type属性值为region:
bind元素的key属性值"button"可以在类javax.swing.plaf.synth.region.java中找到Region BUTTON = new Region("Button","ButtonUI"),其new Region("Button","ButtonUI")中的button可以作为bing元素的key属性的值。
例2:
<style id="a">
<font name="DIALOG" size="12" style="ITALIC"/>
<insets top="1" bottom="2" left="3"/>
<state value="ENABLED">
<object id="customPainter" class="CustomPainter"/>
<painter idref="customPainter"/>
</state>
</style>
<bind style="a" type="name" key="test.*"/>
|
bind元素的type属性值为name:
bind元素的key属性值"test.*"表示"a"的style元素配置的属性应用于在程序中设置名称以”test.“开头的组件(如: JButton bt1 = new JButton();bt1.setName("test.bt1"); //bt1设置了名称为""test.bt1""是以"test."开头,因此bt1可以应用"a"的style元素配置的属性)
2、style下可以有
property | defaultsProperty | state | font | painter | imagePainter | backgroundImage | opaque | (%beansPersistance;) | imageIcon等其他的元素标签。
分享到:
相关推荐
( Java Swing+MSQL+ Hibernate+ BeautyEye外观样式实现)。 随着通信技术的发展,人们的社交范围越来越广,沟通的距离越来越短。这本来是好事,但却带来了意想不到的烦恼:联系方式越来越多,联系人名单越来越长,这使查找...
它可能包含了精心设计的CSS(层叠样式表)文件,通过调整颜色、字体、布局等元素,使论坛呈现出黑暗背景与鲜明对比的颜色搭配。CSS文件是网页设计的核心部分,用于控制页面的样式和布局。在"黑色娃娃 CSS文件格式....
给你意想不到的方便 网页制作 提供了一个资源相当丰富的素材库,你可直接调用包括动画、按钮、图表、背景图像、Webart和各种网页样式、声音效果以及java小程序等等设计精良的网页素材,以及150多个页面模版。...
通过分析和实践这个"JSP项目(企业宣传)",学习者不仅可以深化对JSP、JAVA编程的理解,还能掌握如何构建企业级的宣传网站,包括页面设计、数据管理、用户交互等多个方面,为今后的Web开发工作打下坚实基础。...
此外,Cytoscape还提供了强大的可视化功能,可以自定义节点形状、大小、颜色,以及边的样式和宽度,使得复杂的数据关系一目了然。 在生物信息学研究中,Cytoscape的应用非常广泛。例如,在基因表达数据分析中,它...
与此同时,三个难度等级对应的不同界面样式设计,也为玩家的游戏过程增添了更多视觉享受,增加了游戏的趣味性和吸引力。 综上所述,【黑白棋自制版V1.1(改进)】版本在优化和完善原有游戏体验的基础上,进一步提升...
18. `int`型变量的运算:在C/C++或类似的编程语言中,`int`型变量进行算术运算时,溢出会导致结果的高阶位被截断,可能会出现意想不到的结果。例如,如果i和j都是32位整数,且最大值是2^31-1,那么超出范围的加法...
在Android开发中,`Paint`和`Color`类是绘制图形和文字时不可或缺的重要工具。它们提供了丰富的功能,帮助开发者...在实际项目中,根据具体需求,不断试验和优化`Paint`和`Color`的使用,往往能带来意想不到的效果。
即使小部件是自定义的,您也可以使用属性创建样式。 这个库中有许多预定义的主题,但您也可以轻松使用自己的颜色。 !!! 不同的屏幕分辨率和不同的Android版本可能会出现一些意想不到的结果。 如果您有一些问题或...
3. **高维护成本**:由于上述原因,表单的修改可能会引发意想不到的bug,增加了维护的复杂性。 4. **校验和缓存处理繁琐**:通常需要手动处理表单数据的验证和缓存,增加了额外的工作量。 以下是一个JSON生成表单...
用户可以根据个人的喜好和工作需要,自定义界面元素,例如更改字体大小和样式,选择合适的颜色主题,以及设置个人化的快捷键。这些定制化的选项让每个用户都可以根据个人习惯打造一个独一无二的工作环境,从而提高...
然而,这种方法并不总是完美无缺的,尤其是在某些旧版本的Internet Explorer中,可能会出现意想不到的副作用,比如导致GIF动画停止播放。 一种常见的替代方法是在`href`属性中使用多个`#`符号,如`####`,这同样能...