I know that your can give focus to a node in javafx by doing node.requestFocus(); but is there a way to take away focus from a node in javafx or prevent focus on an object?
you call setVisible(boolean) in order to make it visible or to hide it. You can call setEditable(boolean) to make the field editable or not and finally the setDisable(boolean) to make the field unable to be clicked etc.
I don't think there's any guarantee this will always work, but you can try setting focus to something that inherently doesn't accept keyboard input (such as a layout pane):
import javafx.application.Application;
import javafx.scene.Scene;
import javafx.scene.control.TextField;
import javafx.scene.layout.VBox;
import javafx.stage.Stage;
public class NoFocusTest extends Application {
@Override
public void start(Stage primaryStage) {
TextField tf1 = new TextField();
tf1.setPromptText("Enter something");
TextField tf2 = new TextField();
tf2.setPromptText("Enter something else");
VBox root = new VBox(5, tf1, tf2);
primaryStage.setScene(new Scene(root, 250, 150));
primaryStage.show();
root.requestFocus();
}
}
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With