私は特定のクラスMenuPane
を持っていますが、これはGridPane
です。テキストメッセージを表示する、複数のクリック可能ボタン
LogPane
を含む、
ButtonPane
示すStatPane
、種々の数:このペインは3つのもGridPane
を拡張すべてが他のペインを含んでいます。他の複数のクラスで使用できるクラスを示すテキスト
MenuPane
は、LogPanes push(String message)
機能を使用してメッセージを印刷できます。しかし、ButtonPane
ボタンをクリックしたときにもメッセージを印刷する必要があります。
これに最も効率的な方法は何ですか?もちろんButtonPaneにMenuPaneを与えることができ、this.MenuPane.LogPane.push("This is a message.");
を実行することができますが、これはひどいです。誰もがこれを行うより効率的な/クリーンな方法を知っていますか?
LogPaneコード:
import Project.Other.Constants;
import javafx.scene.control.TextArea;
import javafx.scene.layout.GridPane;
/**
* Created on 15/12/2017.
* Scrollable window which contains Text messages.
*/
class LogPane extends GridPane{
private TextArea log;
LogPane(){
initialize();
}
private void initialize(){
log = new TextArea();
log.setEditable(false);
log.prefWidth(Constants.width/3);
log.prefHeight(Constants.height);
log.setText("Text Log loaded. Messages:");
setConstraints(log, 0, 0);
getChildren().add(log);
setMinHeight(Constants.height);
setMaxHeight(Constants.height);
setMinWidth(Constants.width/3);
setMaxWidth(Constants.width/3);
}
void push(String message){
log.setText(log.getText() + "\n" + message);
log.appendText("");
//log.setScrollTop(Double.MAX_VALUE);
}
}
それは魅力のように働きました!ありがとう。 – JavaHR