小编DVa*_*rga的帖子

具有透明背景的 JavaFX 按钮

Button在 JavaFX 中有一些经典,其中包含一个包含一些文本的框。

我需要没有那个框的按钮,只有文本,当我将按钮悬停或用鼠标单击按钮时,它的颜色会改变。

java javafx button fxml

5
推荐指数
2
解决办法
2万
查看次数

在 JavaFX 中使用多个节点制作 Slider 控件

我想制作一个带有多个节点的 Slider(bar) 控件。

这个想法是能够使用它们设置时间间隔。

例如:

                      13:00 pm        4:00 pm
10:00 am ----------------[]------------[]-------------------- 11:00 pm
                   A             B                    C
Run Code Online (Sandbox Code Playgroud)
  • A = 上午 10:00 - 下午 13:00
  • B = 上午 13:00 - 下午 4:00
  • C = 4:00 am - 11:00 pm

但我只是注意到我无法向控件添加更多节点。有没有办法做到这一点?或者替代解决方案?

编辑:

示例中只有两个节点,但也可以是多个节点。

java javafx slider javafx-8

5
推荐指数
1
解决办法
1852
查看次数

如何禁用节点而不在JavaFX中将其灰显?

我的问题是能够禁用Node用户在打印时无法与之交互的问题.但是,出于同样的原因,我需要整体Node(在这种情况下为a GridPane)及其所有子代(主要是按钮和标签)在打印进行时不能由用户进行交互.

当我写作时setDisable,它会将整体渲染Node出来,但我希望保留原来的颜色和状态Node.

有没有办法做到这一点?通过disableProperty或其他方式,对我来说并不特别重要.这里的关键是你不应该与之交互Node.

提前致谢

css java javafx

5
推荐指数
2
解决办法
3517
查看次数

JavaFX下拉按钮

如何在JavaFX中创建"下拉按钮"?

到目前为止,我正在使用a ChoiceBox为目的,现在我必须为其分配图像ChoiceBox,

ChoiceBox.setGraphic()//不可用 Buttons

所以我打算把它改成一个下拉按钮.这样我就可以设置一个图标了.

现在用SceneBuilder设计UI.

没有帮助搜索如何使用JavaFX创建下拉按钮.

java javafx imagebutton

5
推荐指数
1
解决办法
1万
查看次数

JavaFX:如何根据舞台使中心节点在边框窗格上居中?

我在将边框窗格中的按钮根据舞台居中时遇到问题。它根据边框窗格居中,但我希望它位于窗口的正中心。

在此输入图像描述

我指的是图片的底部,其中有播放按钮和难度选择框。

我使用边框将难度部分放在右侧,将播放按钮放在中间。

正如您所看到的,游戏并不在图片的中心。

我想这样做,但我不知道该怎么做。我认为我可以将左节点的宽度设置为等于右节点的宽度,但我的左节点没有任何内容。

// bottom section for positioning
    BorderPane settings = new BorderPane();
    settings.setPadding(new Insets(10));

    // play button
    Button playBtn = new Button("Play");
    settings.setCenter(playBtn);

    // difficulty options
    Label diffLabel = new Label("Difficulty: ");
    ChoiceBox<String> diffBox = new ChoiceBox<String>(FXCollections.observableArrayList(
            "Easy", "Standard", "Hard"
    ));
    diffBox.getSelectionModel().select(1);

    // for wrapping the diffuclty.
    HBox difficulty = new HBox(diffLabel, diffBox);
    difficulty.setAlignment(Pos.CENTER);
    difficulty.setSpacing(10);

    settings.setRight(difficulty);
Run Code Online (Sandbox Code Playgroud)

java javafx borderpane

5
推荐指数
1
解决办法
5507
查看次数

如何使JavaFX文本换行工作?

我不能为我的生活做JavaFX换文字.相反,我的盒子得到的大小Text.

这是我的主要内容:

BorderPane main = FXMLLoader.load(getClass().getResource("main.fxml"));

primaryStage.setTitle("D394");
primaryStage.setScene(new Scene(main, 1000, 500));
primaryStage.getScene().getStylesheets().add("main.css");
primaryStage.show();
Run Code Online (Sandbox Code Playgroud)

这是我的main.fxml.它非常大,对不起.

<BorderPane prefHeight="401.0" prefWidth="900.0" xmlns="http://javafx.com/javafx/8.0.112-ea"
            xmlns:fx="http://javafx.com/fxml/1" fx:controller="ro.softvisionmedia.gui.MainController">
    <top>
        <MenuBar fx:id="menuBar" maxWidth="-Infinity" minHeight="-Infinity" minWidth="-Infinity">
            <Menu items="" text="Lala">
            </Menu>
        </MenuBar>
    </top>

    <center>
        <TabPane fx:id="tabPane">

            <Tab id="tab_1" fx:id="tab1_D394" closable="false" text="D394">
            </Tab>

            <Tab fx:id="tab2_DateIdentif" closable="false" text="Date identificare">
                <TabPane fx:id="tabPane_dateIdentif">
                    <Tab fx:id="identifPersTVA" closable="false" text="Persoana inregistrata in scopuri de TVA">
                    </Tab>

                    <Tab fx:id="identifRepFiscal" closable="false" text="Reprezentant fiscal/legal/imputernicit">
                    </Tab>
                    <Tab fx:id="identifIntocmit" closable="false" text="Intocmitor">
                        <VBox fx:id="vBoxIntocmitor">
                            <HBox>
                                <TextFlow>
                                    <Text text="Subsemnatul "/>
                                    <Text fx:id="denumireRtext"/>
                                    <Text …
Run Code Online (Sandbox Code Playgroud)

java javafx word-wrap

5
推荐指数
2
解决办法
9167
查看次数

JavaFX 全屏窗口:删除弹出文本

我在用着

window.setFullScreen(true);  
Run Code Online (Sandbox Code Playgroud)

使窗口全屏显示。

但每次我改变窗口上的场景/窗格并再次使其全屏显示时,它都会弹出...

按 ESC 退出全屏模式。

我猜这是一个内置的 NetBeans 函数,因为它在我工作的每台机器上都会执行此操作。有什么方法可以阻止/关闭它,或者有另一种全屏方法,不会弹出任何烦人的东西。

java javafx

5
推荐指数
1
解决办法
1553
查看次数

JavaFX - 如何创建瘦MenuBar?

我放在BorderPane一个MenuBar带有"文件"菜单和"关闭" MenuItem内部的顶部:

厚的菜单栏

如何使它看起来像MenuBar我使用的大多数软件的样子,类似于下图?

厚的菜单栏

我认为它必须足够简单,但作为初学者,我无法真正谷歌.我不确定如何命名问题("javafx菜单栏高度",尺寸,样式等没有太多有用的结果)

css java javafx menubar

5
推荐指数
1
解决办法
1399
查看次数

JavaFX侦听器检查布尔值

我有一个带有GUI的游戏,你可以按下几个按钮来完成游戏.

我有以下布尔值来测试:

public boolean complete(){
    if (initvalue==finalvaue)){
        return true;
    }
    else {
        return false;
    }
}
Run Code Online (Sandbox Code Playgroud)

我想创建一个监听器来检查游戏是否完成并向用户打印消息.我想我需要为此创建一个SimpleBooleanProperty工作.但是我需要将它绑定到上面的布尔值吗?

最好的方法是什么?

java boolean bind javafx properties

4
推荐指数
1
解决办法
9239
查看次数

在JavaFX中为TextField设置KeyPressed事件

TextField在弹出窗口中有多个对象,名为dialog(type :) Stage.

我正在尝试为它们定义一个动作处理程序,目的是在键盘上单击转义按钮后关闭舞台.

这是我关闭阶段的功能:

public void escapeKeyPressed(KeyCode keyCode , Stage dialog){
    if (keyCode == KeyCode.ESCAPE ){
        dialog.close();
        System.out.println("escape got called");
    }
} 
Run Code Online (Sandbox Code Playgroud)

以下是我称之为的地方:

textUsername.setOnAction((event) -> {escapeKeyPressed(KeyCode.ESCAPE ,dialog );});
textAddress.setOnAction((event) -> {escapeKeyPressed(KeyCode.ESCAPE ,dialog );});
textwp.setOnAction((event) -> {escapeKeyPressed(KeyCode.ESCAPE ,dialog );});
textState.setOnAction((event) -> {escapeKeyPressed(KeyCode.ESCAPE ,dialog );});
textloginName.setOnAction((event) -> {escapeKeyPressed(KeyCode.ESCAPE ,dialog );});
Run Code Online (Sandbox Code Playgroud)

问题是函数没有被调用.

知道怎么解决这个问题?值得一提的是,如果我将调用者替换掉,函数本身就能正常工作setOnAction();

java javafx stage event-handling

4
推荐指数
1
解决办法
5322
查看次数