在JavaFX中,要自定義FXML控件,你需要遵循以下步驟:
TextField
、Button
等)或者組合多個控件的容器類(例如,HBox
、VBox
等)。import javafx.scene.control.TextField;
public class CustomTextField extends TextField {
// 在這里添加自定義代碼
}
public class CustomTextField extends TextField {
public CustomTextField() {
super();
init();
}
private void init() {
// 在這里添加自定義樣式和行為
setStyle("-fx-background-color: lightblue;");
}
}
<?xml version="1.0" encoding="UTF-8"?>
<?import javafx.scene.layout.AnchorPane?>
<?import your.package.name.CustomTextField?><AnchorPane xmlns:fx="http://javafx.com/fxml">
<CustomTextField layoutX="50" layoutY="50"/>
</AnchorPane>
import javafx.fxml.FXML;
import your.package.name.CustomTextField;
public class Controller {
@FXML
private CustomTextField customTextField;
@FXML
private void initialize() {
// 在這里處理自定義控件的事件和邏輯
customTextField.textProperty().addListener((observable, oldValue, newValue) -> {
System.out.println("Text changed from " + oldValue + " to " + newValue);
});
}
}
通過以上步驟,你可以創建自定義的FXML控件并在JavaFX應用程序中使用它們。