我在我的代碼中有JavaFX TextField,並且希望將操作添加到TextField上的不同事件。onAction爲javafx中的textfield
import javafx.event.ActionEvent;
import javafx.event.EventHandler;
import javafx.event.EventType;
import javafx.geometry.Pos;
import javafx.scene.control.Button;
import javafx.scene.control.Label;
import javafx.scene.control.TextField;
import javafx.scene.control.Tooltip;
import javafx.scene.image.Image;
import javafx.scene.image.ImageView;
import javafx.scene.layout.*;
import javafx.scene.text.Font;
import javafx.stage.FileChooser;
import javafx.stage.Stage;
import java.io.File;
import javafx.beans.value.ChangeListener;
/* Input from user */
weightTF = new TextField();
weightTF.setMaxWidth(36);
activeInsulinTF = new TextField();
activeInsulinTF.setMaxWidth(36);
VBox inputBox = new VBox();
inputBox.setFillWidth(false);
inputBox.setAlignment(Pos.CENTER);
inputBox.getChildren().add(weightTF);
inputBox.getChildren().add(activeInsulinTF);
inputBox.setSpacing(8);
// Add onAction for the texfields
menuHBox.getChildren().add(inputBox);
weightTF.setOnAction(new EventHandler<ActionEvent>() {
@Override
public void handle(ActionEvent e) {
double weight = Double.parseDouble(weightTF.getText());
Main.state.setWeight(weight);
System.out.println("Entered weight: " + weight);
}
});
今天我只有在TextField中寫入一些文本後按Enter鍵時纔會有動作。我怎樣才能添加一個操作來處理標籤頁?另外,當TextField在點擊鼠標時失去焦點時如何反應?
當我閱讀文檔,它應該是可能的: https://docs.oracle.com/javase/8/javafx/api/javafx/scene/control/TextField.html
希望有人能幫助我:)
謝謝!你的代碼標籤工作得很好,你讓我在正確的方向來解決它的鼠標東西:)。所以現在一切正常。 – Hanna
@Hanna我猜你的問題,但你需要響應用戶移動焦點到不同的控制。使用這樣的「低級別」事件並不是一個非常可靠的方法。您應該使用文本字段的'focusedProperty'來註冊監聽器。 –