我设计了一个带有 TextField 和 Button 的简单表单。
创建舞台时,场景包含表单,TextField 必须预先加载一个字符。问题是,当显示形式时,该字符被选择,如图所示
我试过 textfield.deselect() 或 textfield.positionCaret(1) (或两者)但没有任何改变。我不想移除文本字段上的焦点,而是取消选择文本并在末尾移动插入符号(这样如果用户写了一些东西,第一个字符就不会被覆盖)。
这是我写的代码:
try {
Stage primaryStage = new Stage();
FXMLLoader loader = new FXMLLoader();
Pane root = loader.load(getClass().getResource("/resources/view/quick-search.fxml").openStream());
QuickSearchCtrl quickSearchCtrl = (QuickSearchCtrl) loader.getController();
quickSearchCtrl.text_tf.setText(text);
quickSearchCtrl.text_tf.deselect();
primaryStage.setTitle("");
primaryStage.setScene(new Scene(root, 230, 54));
primaryStage.show();
primaryStage.setResizable(false);
} catch (IOException e) {
e.printStackTrace();
}
12345678_0001
相关分类