JavaFX ComboBox CSS样式
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了JavaFX ComboBox CSS样式,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1746字,纯文字阅读大概需要3分钟。
内容图文
![JavaFX ComboBox CSS样式](/upload/InfoBanner/zyjiaocheng/683/275489bff2a8412ca9fb6358fc85f29d.jpg)
我正在使用JavaFX FXML构建一个小型应用程序,并且试图实现一些具有特定样式的简单CSS.
我对Combobox元素有疑问.实际上,默认情况下其颜色为灰色:
我想将其设置为白色(或透明),并保留边框,以与“文本字段”匹配相同的样式.因此,我尝试将背景色设置为透明,但有一个副作用:边框也变得透明!
这是我添加的CSS:
.root {
-fx-font-size: 11pt;
-fx-font-family: "Verdana";
-fx-background: #FFFFFF;
}
.normal-label {
-fx-text-fill: #005EB8;
}
.normal-text-field {
-fx-text-fill: #333333;
}
.combo-box {
-fx-background-color: transparent;
}
我一点都不习惯CSS编写,所以也许我完全错过了一些东西.组合框没有定义边框吗?因此,我必须重写边框并找出“文本字段”的边框是什么?
解决方法:
来自ComboBoxBase的ComboBox inherits its CSS style.
The ComboBox control has all the properties and pseudo?classes of
ComboBoxBase.
ComboBoxBase的默认CSS样式类定义为:
.combo-box-base {
-fx-background-color: -fx-shadow-highlight-color, -fx-outer-border, -fx-inner-border, -fx-body-color;
-fx-background-insets: 0 0 -1 0, 0, 1, 2;
-fx-background-radius: 3px, 3px, 2px, 1px;
-fx-padding: 0.333333em 0.666667em 0.333333em 0.666667em; /* 4 8 4 8 */
-fx-text-fill: -fx-text-base-color;
-fx-alignment: CENTER;
-fx-content-display: LEFT;
}
您可以像下面这样覆盖此样式类:
.combo-box-base {
-fx-background-color: -fx-shadow-highlight-color, -fx-outer-border, -fx-inner-border, white;
-fx-background-insets: 0 0 -1 0, 0, 1, 2;
-fx-background-radius: 3px, 3px, 2px, 1px;
}
此样式类仅将内部设置为白色,实际上未修饰边框(删除最后两个属性,然后您将获得纯白色的无边框ComboBox).
注意:
如果仅使用ComboBox,则覆盖.combo-box-base或.combo-box样式类是等效的.
答案中使用.combo-box-base样式类而不是另一个的原因是,还有其他控件也继承了.combo-box-base样式类,例如ColorPicker和DatePicker.覆盖.combo-基于框的基础上,所有这些控件共享相同的样式,从而实现了高度统一的设计.
内容总结
以上是互联网集市为您收集整理的JavaFX ComboBox CSS样式全部内容,希望文章能够帮你解决JavaFX ComboBox CSS样式所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。