java - 在 JavaFx 中禁用键盘快捷键
问题描述
是否可以在我的 JavaFx 应用程序中禁用 Ctrl+V 快捷方式?就像在文本字段中一样,用户将无法从某处复制文本并使用 Ctrl+V 粘贴它。
这是我的控制器类:
package application;
import com.jfoenix.controls.JFXTextField;
import javafx.fxml.FXML;
public class Controller {
@FXML
private JFXTextField t1 = new JFXTextField() {
@Override
public void paste() {
//do something to stop paste
}
};
}
解决方案
You can do so by overriding the paste method and remove the line
super.paste();
it will do nothing when user try to paste
import javafx.application.Application;
import javafx.scene.Scene;
import javafx.scene.control.TextField;
import javafx.scene.layout.StackPane;
import javafx.stage.Stage;
public class Main extends Application {
public static void main(String[] args){
launch(args);
}
@Override
public void start(Stage stage){
TextField textField = new TextField(){
@Override
public void paste() {
}
};
Scene scene = new Scene(new StackPane(textField));
stage.setScene(scene);
stage.show();
}
}
推荐阅读
- ios - 如何在自定义滚动偏移处而不是在 UITableView 的顶部折叠带有大标题的导航栏?
- python - 如何解决包含(0、6)数组的numpy数组求和过程中的广播错误?
- angular - ionic 4 以 Html 显示数据存储
- node.js - 使用 node.js 将数据从 Excel 加载到 sql server 表
- r - 查找累积总和达到限制的最大值
- spring-mvc - OpenApi 3.0.2 | Spring 服务器生成器 | Api/Controller 接口命名
- angular - 如何删除以前使用 ng add 原理图命令添加的文件
- java - C++对象到java,将对象传递给java后属性不正确(int,double)
- django - 无法过滤、排序和搜索嵌套端点 API 的数据
- c++11 - lambda 异步调度问题捕获的成员函数