gpt4 book ai didi

没有自动隐藏的 JavaFX MenuItem

转载 作者:行者123 更新时间:2023-12-01 22:21:35 26 4
gpt4 key购买 nike

我想要一个在单击时不会自动隐藏的 MenuItem(更具体地说是 CheckMenuItem)。我知道 CustomMenuItem 有这个功能,但它应该是一个 CheckMenuItem。

最佳答案

使用 CustomMenuItem , setHideOnClick和构造函数中的复选框。

<小时/>

编辑:

我刚刚注意到 JavaFX 8u40 中的情况很困惑。菜单项文本颜色与背景颜色相同,因此您看不到任何文本。

对此的快速解决方法是设置文本样式,例如。克。

cb.setStyle("-fx-text-fill: -fx-text-base-color");

这是一个完整的示例:

public class Main extends Application {
@Override
public void start(Stage primaryStage) {
try {

VBox root = new VBox();

MenuBar menuBar = new MenuBar();

final Menu menu = new Menu( "Items");

for( int i=0; i < 10; i++) {

CheckBox cb = new CheckBox( "Item " + i);

// workaround: the color of the labels is wrong (white text on white background), we have to set it explicitly
cb.setStyle("-fx-text-fill: -fx-text-base-color");

CustomMenuItem cmi = new CustomMenuItem( cb);
cmi.setHideOnClick(false);

menu.getItems().add( cmi);

}

menu.getItems().add( new MenuItem( "This one doesn't stay open"));

menuBar.getMenus().add( menu);


root.getChildren().add( menuBar);

Scene scene = new Scene(root,400,400);

primaryStage.setScene(scene);
primaryStage.show();

} catch(Exception e) {
e.printStackTrace();
}


}

public static void main(String[] args) {
launch(args);
}
}

关于没有自动隐藏的 JavaFX MenuItem,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29622812/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com