我尝试将以下样式应用于我的CheckBox
.check-box .box {
-fx-background-color: -fx-shadow-highlight-color, -fx-outer-border, -fx-inner-border, -fx-white;
}
.check-box:selected .mark {
-fx-background-color: -fx-colour-white;
}
.check-box:selected .box {
-fx-background-color: -fx-blue;
}
Run Code Online (Sandbox Code Playgroud)
目的是要有一个带有灰色边框的白色复选框,并选中该复选框以使其具有蓝色背景和白色刻度。当我应用这些样式时,我会得到想要的结果。但是,执行以下步骤时会发生奇怪的事情:
1-单击复选框以选择
2-单击复选框以取消选择
复选框消失,并且仅当我在窗格中的其他位置单击时才会再次出现。
首次渲染然后选中该复选框时,您可以在下面看到该复选框的图像。
我不认为问题出在您的StyleSheets上,我认为这是由于Java代码中的错误操作引起的,您说:
该复选框消失,并且仅当我单击窗格中的其他位置时才会再次出现
因此,从您的Pane开始,看看是否有相关事件,并且关于样式,您的方法几乎是正确的,这就是我应该如何进行的:
.check-box .box {
-fx-background-color: white;
-fx-border-color:grey;
-fx-border-radius:3px;
}
.check-box:selected .mark {
-fx-background-color: white;
}
.check-box:selected .box {
-fx-background-color: #28a3f4;
}
Run Code Online (Sandbox Code Playgroud)
祝好运 !
| 归档时间: |
|
| 查看次数: |
9133 次 |
| 最近记录: |