JavaFX Label setLabelFor()方法示例

在JavaFX中,可以通过实例化javafx.scene.control.Label类来创建标签。此类提供了一个名为labelFor()的方法。使用此方法,可以将当前标签设置为另一个控制节点的标签。

在设置,助记符和加速器解析时,此方法很方便。

示例

在下面的JavaFX示例中,我们创建了一个标签,一个文本字段和一个按钮。使用labelFor()方法,我们将标签(Text)与文本字段相关联,从而启用助记符解析(T)。因此,在输出窗口上,如果按Alt + t,则文本字段将被聚焦。

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

输出结果