- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
使用JFoenix控件JFXListView
时,如果使用单元格工厂,则无法将 Material 样式分配给列表。如何使用单元格工厂,同时指定JFXListView
控件的样式?
这是我的最小,完整和可验证的示例:
demoStyle.css (摘自JFoenix演示)
.jfx-list-cell-container {
-fx-alignment: center-left;
}
.jfx-list-cell-container > .label {
-fx-text-fill: BLACK;
}
.jfx-list-cell:odd:selected > .jfx-rippler > StackPane, .jfx-list-cell:even:selected > .jfx-rippler > StackPane {
-fx-background-color: rgba(0, 0, 255, 0.2);
}
.jfx-list-cell {
-fx-background-insets: 0.0;
-fx-text-fill: BLACK;
}
.jfx-list-cell:odd, .jfx-list-cell:even {
-fx-background-color: WHITE;
}
.jfx-list-cell:filled:hover {
-fx-text-fill: black;
}
.jfx-list-cell .jfx-rippler {
-jfx-rippler-fill: BLUE;
}
.jfx-list-view {
-fx-background-insets: 0;
-jfx-cell-horizontal-margin: 0.0;
-jfx-cell-vertical-margin: 5.0;
-jfx-vertical-gap: 10;
-jfx-expanded: false;
-fx-pref-width: 200;
}
<?import com.jfoenix.controls.JFXListView?>
<?import javafx.scene.layout.HBox?>
<HBox
xmlns="http://javafx.com/javafx/8.0.112"
xmlns:fx="http://javafx.com/fxml"
fx:controller="<some>.<valid>.<package>.<structure>.DemoController"
minWidth="Infinity"
minHeight="Infinity"
>
<JFXListView fx:id="jfoenixListViewPlain"/>
<JFXListView fx:id="jfoenixListViewWithCustomCell"/>
</HBox>
import com.jfoenix.controls.JFXListView
import javafx.application.Application
import javafx.collections.FXCollections
import javafx.fxml.FXML
import javafx.fxml.FXMLLoader
import javafx.fxml.Initializable
import javafx.scene.Scene
import javafx.scene.control.ContentDisplay
import javafx.scene.control.Label
import javafx.scene.control.ListCell
import javafx.scene.layout.HBox
import javafx.scene.paint.Color
import javafx.stage.Stage
import java.net.URL
import java.util.*
data class MyCustomData(val text: String)
class DemoController : Initializable
{
internal class MyCustomCell : ListCell<MyCustomData>()
{
init
{
text = null
contentDisplay = ContentDisplay.GRAPHIC_ONLY
}
override fun updateItem(item: MyCustomData?, empty: Boolean)
{
super.updateItem(item, empty)
graphic =
if (empty || item == null)
{
null
}
else
{
// In practice this isn't a Label but a Pane with multiple children
Label().apply { text = item.text }
}
}
}
@FXML
private lateinit var jfoenixListViewPlain: JFXListView<String>
@FXML
private lateinit var jfoenixListViewWithCustomCell: JFXListView<MyCustomData>
override fun initialize(location: URL?, resources: ResourceBundle?)
{
val plainList = FXCollections.observableArrayList("A", "B", "C")
jfoenixListViewPlain.items = plainList
val customItemsList = FXCollections.observableArrayList(MyCustomData("A"), MyCustomData("B"), MyCustomData("C"))
jfoenixListViewWithCustomCell.items = customItemsList
jfoenixListViewWithCustomCell.setCellFactory { MyCustomCell() }
}
}
class MainDemoClass : Application()
{
companion object
{
@JvmStatic
fun main(args: Array<String>)
{
Application.launch(MainDemoClass::class.java, *args)
}
}
@Throws(Exception::class)
override fun start(stage: Stage)
{
val loader = FXMLLoader(javaClass.getResource("/layouts/demoLayout.fxml"))
val root = loader.load<HBox>()
with(stage)
{
title = "Test's Title"
scene =
Scene(root, 600.0, 600.0, Color.WHITE).apply {
with(stylesheets)
{
add(MainDemoClass::class.java.getResource("/css/jfoenix-design.css").toExternalForm())
add(MainDemoClass::class.java.getResource("/css/demoStyle.css").toExternalForm())
}
}
isResizable = false
show()
}
}
}
最佳答案
在上更改internal class MyCustomCell : ListCell<MyCustomData>()
internal class MyCustomCell : JFXListCell<MyCustomData>()
关于listview - 在JFXListView中使用单元工厂将忽略JFoenix样式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50297352/
所以我将我的 Java 从 8 更新到 9,我确实意识到 Jfoenix 有单独的 Java 9 Jar 文件。但是,在下载 Jar 文件然后尝试像以前一样导入到 Scene builder 之后,没
我正在制作 javafx 应用程序并使用 Jfoenix 库。 包含有关表中元素的特定信息的窗口通过以下代码打开: @FXML public void showEditPolicyDialog() {
我一直在使用JFOENIX库来制作 Material 设计桌面应用程序,并且从 JFOENIX 演示中,我看到舞台窗口更改为如下图所示: 我也想做同样的事情,但我没有找到任何关于它的话题。这里有人在使
我正在尝试 JavaFX,我使用了 JFoenix将 Material 设计纳入应用程序的库。 我从 JFoenix 添加的所有其他控件都具有 Material 外观,但 JFXTreeTableVi
每当我尝试打开 JFoenix 程序时,控制台中都会出现相同的错误消息...当我使用标准 JavaFx 组件时,一切都运行良好 关于Java的信息,我使用:我已经将JFoenix库导入到eclipse
我正在尝试使用Jfoenix创建一些GUI,并且在运行它们时遇到以下错误。我不了解这些错误,我整天都在忙着指导我。
我试图使节点列表水平打开,但它垂直打开。有办法实现这个目标吗?谢谢。 JFXNodesList buttonsNode=new JFXNodesList(); JFXButton val1=new J
我有一个带有白色背景(而不是“灰色”默认背景)、透明边框和圆角的 JFXButton。这是我的 style 属性: -fx-border-color: rgba(0,0,0,0.25); -fx-bo
目前,我的 jfoenix 时间选择器中小时单元格和分钟单元格的颜色为黑色。每当我将鼠标悬停在两者上时,我想添加一个指针和不同的颜色。您可能会在下面看到描绘这两者的图像。有人知道这个的 css 解决方
我正在编写一个 JavaFX 应用程序,我在其中使用 JFoenix 库中的 JFXTreeTableView 组件创建一个表。默认情况下,列标题居中对齐。 我希望列标题居中左对齐。我尝试使用以下 C
现在我的 jfoenix 日期选择器中的日期单元格和年份单元格有灰色悬停效果。每当我将鼠标悬停在两者上时,我想添加一个指针和不同的颜色。您可能会在下面看到描绘这两者的图像。有人知道这个的 css 解决
我目前正在使用 jfoenix 的组合框,但我的问题是我无法编辑其中的提示文本颜色。它一直使用默认颜色灰色。如何将组合框的字体颜色从灰色更改为白色?有没有办法在 css 中做到这一点? 它是这样的:
我正在尝试更改在 JFoenix 库 ( http://www.jfoenix.com ) 上找到的进度条的颜色。我正在使用 Java 和 JavaFX,这是我的示例 css: .progress-b
我正在使用 JFoenix 在我的 JavaFX 应用程序中包含类似元素的 google Material 。我注意到,为了使用 css 设置 JFoenix 元素的样式,一些命令与仅使用 JavaF
我正在使用 Jfoenix,JFXDialog 没有出现。 我做错了什么?这是代码: JFXDialogLayout content= new JFXDialogLayout(); content.s
这是我的 pom.xml 文件,用于在我的项目中使用 javafx 11 和 JFoenix 9。但是当我使用 Maven 编译并运行 javafx 时,它会出现此错误: Caused by: jav
我已经在互联网上查找如何在 gradle 上修复此问题 3 天了 Caused by: java.lang.IllegalAccessError: class com.jfoenix.skins.JF
如何更改 jfoenix tabbedpane 默认标题颜色? jFoenix TabbedPane Header 只有标签颜色会改变。 Colored Tabs 最佳答案 你可以使用 css 来做到
请帮我更改验证器的颜色这个建议对我没有帮助: .error * { -fx-text-fill: someColor; } 这只是改变提示文本的颜色: -fx-prompt-text-fill:
JFoenix 在桌面应用程序上运行良好。但是在 android 上实现它时它会受到打击(应用程序停止工作并退出提示对话框,不幸的是应用程序停止使用报告按钮)。 So how to Implement
我是一名优秀的程序员,十分优秀!