我需要帮助。我有一个带有按钮,表格视图等场景的fxml文件。在控制器中,有一个ChoiseBox方法,但构建后我看不到该数据。
我尝试做另一种控制器,另一种方法,但是没有一种方法可以帮助我

ChoiseBox具有ID-monthChoiceBox

XML文件

<AnchorPane minHeight="0.0" minWidth="0.0" prefHeight="180.0" prefWidth="200.0">
    <children>
       <Button layoutX="449.0" layoutY="15.0" mnemonicParsing="false" prefHeight="32.0" prefWidth="79.0" text="Открыть" />
       <ChoiceBox fx:id="monthChoiceBox" layoutX="14.0" layoutY="15.0" prefHeight="0.0" prefWidth="247.0" />
       <Button layoutX="1162.0" layoutY="626.0" mnemonicParsing="false" text="Сохранить" />
       <ChoiceBox layoutX="278.0" layoutY="16.0" prefWidth="150.0" />
     </children>
</AnchorPane>


控制者


// some import classes

public class Controller {

    @FXML private ChoiceBox<String> monthChoiceBox;

    @FXML
    private void fillmonthChoiceBox() {
        ObservableList<String> month = FXCollections.observableArrayList();
        month.addAll("Январь", "Февраль", "Март",
                "Апрель", "Май", "Июнь",
                "Июль", "Август", "Сентябрь",
                "Октябрь", "Ноябрь", "Декабрь");
        monthChoiceBox.setItems(month);

    }
}


主要

package sample;

//some import classes
public class Main extends Application{

    @Override
    public void start(Stage stage) throws IOException {
        Parent root = FXMLLoader.load(getClass().getResource("main.fxml"));
        stage.setTitle("Учет рабочего времени дежурно-диспетчерского состава");
        Scene scene = new Scene(root);
        stage.setScene(scene);
        stage.show();
    }

    public static void main(String[] args) {
        Application.launch(args);
    }
}

最佳答案

我看不到fillmonthChoiceBox()的调用。方法的@FXM注释用于组件的绑定处理程序。就像onMouseClicked =“#handleOnMouseClicked”。在这种情况下,可以使用@FXML public void initialize(){}进行数据初始化

09-05 05:02