我该如何制作适用于每个按钮的句柄,因此我不必为每个按钮制作几乎相同的句柄?对1个控制器句柄的多个FXML变量
所以我有9个接触FXML文件,每一个看起来是这样的:
<Button fx:id="id1" mnemonicParsing="false" onAction="#handleContactEmailButtonAction" prefHeight="60.0" prefWidth="380.0" style="-fx-background-color: white;">
<graphic>
<VBox style="-fx-background-color: white; -fx-border-color: white;">
<children>
<Label prefHeight="30.0" prefWidth="334.0" text="Jane Doe" />
<Label prefHeight="17.0" prefWidth="349.0" text="[email protected]" textAlignment="CENTER" />
</children>
</VBox>
</graphic>
</Button>
这是控制器:
@FXML
private Button id1;
@FXML
private Button id2;
@FXML
private Button id3;
@FXML
private Button id4;
@FXML
private Button id5;
@FXML
private Button id6;
@FXML
private Button id7;
@FXML
private Button id8;
@FXML
private Button id9;
@FXML
protected void handleContactEmailButtonAction(ActionEvent event) {
try {
Desktop desktop = Desktop.getDesktop();
String message = "mailto:"+emailvariable+"?subject=Music%20Bookings";
URI uri = URI.create(message);
desktop.mail(uri);
} catch (Exception e) {
e.printStackTrace();
}
}
因此,如果按钮与FX:ID = “ID1”被点击,然后电子邮件变量变为相关标签中的电子邮件,并且全部使用一个控制器?
任何和所有的帮助表示赞赏,谢谢!