【问题标题】:Add events by css class name javafx通过 css 类名 javafx 添加事件
【发布时间】:2018-01-01 20:18:01
【问题描述】:

在这里,我创建了一个 css 类并将它们添加到 10 个标签中。 (仪表板中的按钮。由于鼠标悬停事件相同,因此使用相同的类) 现在我想在按下按钮后更改按钮样式。并且必须删除鼠标悬停效果。

我该怎么做?

【问题讨论】:

  • 这里有一个解决方案。 /s 显示你的代码。
  • 所以你想要一些效果,比如浏览器中的链接在访问它们后变成紫色......对吗?
  • 没有。不完全是。单击按钮并加载面板后,必须选择该按钮。在选择具有相同类的任何节点后,我需要应用事件

标签: java css javafx fxml dashboard


【解决方案1】:

假设您的 CSS 当前如下所示:

.mybutton
{
    /*some styles*/
}
.mybutton:hover
{
    /*some styles*/
}

改成:

.mybutton
{
    /*some styles*/
}
.mybutton.unpressed:hover
{
    /*some styles*/
}

然后给所有按钮添加类'unpressed',当按钮被按下时移除:

myButton.setOnAction((ActionEvent e) -> 
     myButton.getStyleClass().remove("unpressed");
);

【讨论】:

  • 通过这种方法,我必须为所有按钮分别写这个。我需要得到,当 .mybutton -(css 的名称)- 被按下时,只改变它的 css。
  • 我不明白你的意思。
  • 所有按钮都有相同的css样式类名(.mybutton)。当按下具有 .mybutton css 的任何东西(任何按钮)时,我需要开始操作。
  • 是的。这就是我的假设。这不是问题。
  • 当点击任何具有相同 CSS 样式名称的内容时,我需要开始操作
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-06-05
  • 2021-10-14
相关资源
最近更新 更多