如何使用 JavaFX 在标签中设置助记符?

javafxobject oriented programmingprogramming更新于 2025/6/26 6:52:17

您可以使用 Label 组件在用户界面上显示文本元素/图像。它是一个不可编辑的文本控件,主要用于指定应用程序中其他节点的用途。

在 JavaFX 中,您可以通过实例化 javafx.scene.control.Label 类来创建标签。

设置助记符

助记符是一个数字或字符,通常位于用户界面组件(按钮、文本字段等)的菜单标题中,并带有下划线。如果您同时按下此字符和 Alt 键,则相应的菜单项将被聚焦。

创建助记符 −

  • 通过实例化其相应的类来创建任何节点。

  • 创建一个标签来关联该节点,并在所需的助记符前添加下划线字符 (“_”)。

  • 默认情况下,标签的助记符解析值为 false,请使用 setMnemonicParsing() 方法将此值设置为 true

  • 将标签设置/关联到所需的节点。

  • 将标签和字段添加到场景。

示例

import javafx.application.Application;
import javafx.geometry.Insets;
import javafx.scene.Scene;
import javafx.scene.control.Label;
import javafx.scene.control.PasswordField;
import javafx.scene.control.TextField;
import javafx.scene.layout.HBox;
import javafx.scene.paint.Color;
import javafx.stage.Stage;
public class LabelForExample extends Application {
   public void start(Stage stage) {
      //创建节点
      TextField textField = new TextField();
      PasswordField pwdField = new PasswordField();
      //创建标签
      Label label1 = new Label("_Email");
      label1.setMnemonicParsing(true);
      label1.setLabelFor(textField);
      Label label2 = new Label("_Password");
      label2.setMnemonicParsing(true);
      label2.setLabelFor(pwdField);
      //为节点添加标签
      HBox box1 = new HBox(5);
      box1.setPadding(new Insets(25, 5 , 5, 50));
      box1.getChildren().addAll(label1, textField, label2, pwdField);
      //设置舞台
      Scene scene = new Scene(box1, 595, 150, Color.BEIGE);
      stage.setTitle("Check Box Example");
      stage.setScene(scene);
      stage.show();
   }
   public static void main(String args[]){
      launch(args);
   }
}

输出

如果您按下键盘上的 Alt+e,焦点将转移到第一个文本字段,如果您按下键盘上的 Alt+p,焦点将转移到第二个文本字段


相关文章