当在 TextField 内按下 Enter 键时,JavaFX 程序会切换全屏

标签 java javafx fullscreen textfield

只要同时按下键盘上的 Alt 和 Enter 键,我的程序就会进入全屏。这基本上可以按预期工作。

问题是每当按下回车键时我的程序就会切换全屏模式。按下 alt 键并不重要。

如何才能使程序在仅按 Enter 键时不会切换全屏模式。

我正在使用 OpenJFX 11。

package application;

import javafx.application.Application;
import javafx.stage.Stage;
import javafx.scene.Scene;
import javafx.scene.control.TextField;
import javafx.scene.input.KeyCode;
import javafx.scene.input.KeyCodeCombination;
import javafx.scene.input.KeyCombination;
import javafx.scene.input.KeyEvent;
import javafx.scene.layout.GridPane;


public class Main extends Application {
   final KeyCombination FullScreenKeyCombo = 
         new KeyCodeCombination(KeyCode.ENTER, KeyCombination.ALT_ANY);

    @Override
    public void start(Stage stage) {
            GridPane grid = new GridPane();
            Scene scene = new Scene(grid, 1600, 900);
            stage.setScene(scene);
            stage.show();

         // create TextField and add to GridPane
         TextField textField = new TextField();
         grid.add(textField, 0, 0);

         // toggle full-screen when alt + enter is pressed
         scene.addEventHandler(KeyEvent.KEY_PRESSED, event -> {

            if(FullScreenKeyCombo.match(event)) {

               stage.setFullScreen(!stage.isFullScreen());

            }
         });

    }

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

最佳答案

在这一行中:

new KeyCodeCombination(KeyCode.ENTER, KeyCombination.ALT_ANY);

ALT_ANY 表示“我不在乎 Alt 键是否被按下。”

使用ALT_DOWN相反:

new KeyCodeCombination(KeyCode.ENTER, KeyCombination.ALT_DOWN);

关于当在 TextField 内按下 Enter 键时,JavaFX 程序会切换全屏,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53799162/

相关文章:

java - Springfox swaggerui -> 更改 spring-mvc 的 swagger ui 的默认 ui 路径

java - 如何将操作连接到 ControlsFX 中的按钮?

java - 在 JUnit 测试中更改 Spring 实现对象的最佳实践

java - Gradle 构建后未导入包(org.json)——没有错误或反馈

java - 使用 JavaFX Scene Builder 在代码中更改 ImageView 图像

java - 更新 JavaFX 标签不适用于数据绑定(bind)

ios - ios,Web View 中的Youtube全屏旋转

javascript - 使用全屏 API 制作视频全屏

android - 使用全屏 Activity

java - 调整框架大小时矩形组件消失