JavaFX - 文字欄位



文字欄位是圖形使用者介面元件,用於以文字形式接受使用者輸入。它是系統和使用者之間互動的最簡單方式。我們可以在表單或對話方塊視窗中找到文字欄位,如下圖所示:

JavaFX textfield

JavaFX 中的 TextField

在 JavaFX 中,TextField 類表示文字欄位,它是名為 javafx.scene.control 包的一部分。使用它,我們可以接受來自使用者的輸入並將其讀取到我們的應用程式中。此類繼承了 TextInputControl,它是所有文字控制元件類的基類。要建立文字欄位,請使用以下任何建構函式例項化 TextField 類:

  • TextField() - 此建構函式將建立一個空的文字欄位。

  • TextField(String str) - 這是一個引數化建構函式,它使用指定的文字構造一個文字欄位。

請注意,在最新版本的 JavaFX 中,TextField 類僅接受單行文字。

示例

在以下 JavaFX 程式中,我們將建立一個作為文字的超連結。將此程式碼儲存在名為 JavafxTextfield.java 的檔案中。

import javafx.application.Application;
import javafx.geometry.Insets;
import javafx.scene.Scene;
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 JavafxTextfield extends Application {
   public void start(Stage stage) {
      //Creating nodes
      TextField textField1 = new TextField("Enter your name");
      TextField textField2 = new TextField("Enter your e-mail");
      //Creating labels
      Label label1 = new Label("Name: ");
      Label label2 = new Label("Email: ");
      //Adding labels for nodes
      HBox box = new HBox(5);
      box.setPadding(new Insets(25, 5 , 5, 50));
      box.getChildren().addAll(label1, textField1, label2, textField2);
      //Setting the stage
      Scene scene = new Scene(box, 595, 150, Color.BEIGE);
      stage.setTitle("Text Field Example");
      stage.setScene(scene);
      stage.show();
   }
   public static void main(String args[]){
      launch(args);
   }
}

要從命令提示符編譯和執行儲存的 Java 檔案,請使用以下命令:

javac --module-path %PATH_TO_FX% --add-modules javafx.controls JavafxTextfield.java
java --module-path %PATH_TO_FX% --add-modules javafx.controls JavafxTextfield

輸出

當我們執行上述程式時,將生成以下輸出。

TextField Output
廣告

© . All rights reserved.