0
我有一個可擴展的按鈕數量(大約20+)的TabPane。 我想要在左邊的區域連接以前的文本和每個按鈕所保存的新文本。JavaFX - TextArea多個按鈕放置文本
所以在開始時,TextArea(可能不是最好用的)是空白的。 然後你按Tab Foo然後選擇其中一個相應的按鈕Bar。 textarea將填充欄 - $ 10000000000000
我正在使用StringBuilder。我是否需要讓每個按鈕都向StringBuilder添加文本,然後將TextArea設置爲顯示該文本?我覺得每個按鈕都會產生真正冗餘的代碼。不過,我認爲這是因爲文本區將只能夠在按下特定按鍵來獲取文本的唯一途徑....
import java.net.URL;
import java.util.ResourceBundle;
import javafx.event.ActionEvent;
import javafx.fxml.FXML;
import javafx.fxml.Initializable;
import javafx.scene.control.TextArea;
/**
* FXML Controller class
*
* @author David
*/
public class MainMenuController implements Initializable {
private StringBuilder fieldContent;
@FXML TextArea txtReceipt;
@FXML
void btnExample(ActionEvent event) {
fieldContent.append(btnExample.getText());
txtReceipt.setText(fieldContent.toString());
}
void btnExample2(ActionEvent event) {
fieldContent.append(btnExample.getText());;
txtReceipt.setText(fieldContent.toString());
}
/**
* Initializes the controller class.
*/
@Override
public void initialize(URL url, ResourceBundle rb) {
fieldContent = new StringBuilder("");
}
}
你能告訴我們一個你的代碼的例子嗎? – Eric
添加代碼。 Thx建議 – FamousFrik
BTW:'TextArea'有一個'appendText'方法......(如果你不需要'StringBuilder'來完成串聯字符串以外的任何操作)。 – fabian