[英]Use a method from another JavaFX class Java
所以如果你熟悉JavaFX,可以使用以下Node
方法修改Buttons
對象
myButton.setTranslateX(10);
myButton.setTranslateY(-10);
這些方法在里面起作用
public void start(Stage primaryStage) throws Exception {}
據我了解, start
是Application
中運行 JavaFX 目的的一種方法。 由於所有myButton
對象都具有相同的結構,因此我嘗試在Main.java
文件中創建以下方法
public void createMyButton(double X, double Y, String label, String image_path) throws Exception {
this.setTranslateX(X);
this.setTranslateY(Y);
this.setText(label);
//TO DO this.setButtonImage(src=image_path);
}
但是我知道createMyButton
中的方法來自另一個類(我認為來自Node
)。 而且(當然)我得到了錯誤
Cannot resolve method 'setTranslateX' in 'Main' s
因為編譯器正在我的程序中查看這些方法,而不是在 JavaFX SDK 中。 如何在自己的方法中調用其他類方法? 我試過
public void createMyButton(bla bla) throws Exception extends Node
public void createMyButton(bla bla) throws Exception extends Application
但我認為我完全在鑽石之外。 我還嘗試創建自己的class
, class
繼承其他class
方法,但這有點超出我目前的知識范圍,我想知道是否有更簡單/更直接的方法來做到這一點
我不是 JavaFX 人,但我認為問題在於您正在調用this.setTranslateX(X);
在this
不是按鈕的方法中(我認為它可能是一個 Main 對象,需要查看更多代碼才能確定)。
嘗試這個:
public Button createMyButton(double X, double Y, String label, String image_path) throws Exception {
Button button = new Button(...) // not sure how you're initialising your buttons normally
button.setTranslateX(X);
button.setTranslateY(Y);
button.setText(label);
button.setButtonImage(src=image_path);
return button
}
然后,當您想在其他地方創建按鈕時,您可以調用該方法:
Button button = createMyButton(10, 20, "My Button", "images/button.png")
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.