我想設置我的JTextArea佔用屏幕的最大horz長度,以便下一件事,在這種情況下,一個按鈕,將開始一個新的行,但我不知道如何做到這一點。我通過設置JTextArea的大小從20到1000變化,但沒有做任何事情。如何在Java SWING的新行上啓動一些東西?
如何讓我的textarea佔據整個第一行,然後在下一行開始添加下一個項目?以下是我迄今爲止...
MyFrame(){//constructor
super("Simple Calculator");
p = new JPanel();
grid = new GridLayout(4, 4, 3, 3);
p.setLayout(grid);
setSize(400, 500);
setResizable(true);
setDefaultCloseOperation(EXIT_ON_CLOSE);
setUpTextScreen();
//create buttons
for(int i = 0; i < buttonValues.length; i++){
p.add(new JButton(buttonValues[i]));
}
add(p);
setVisible(true);
}
private void setUpTextScreen() {
textOnScreen = new JTextArea(7, 1000);
textOnScreen.setText("0");//default
textOnScreen.setEditable(false);
p.add(textOnScreen);
}
最簡單的方法是嘗試新的佈局。其他佈局風格是什麼? gridLayout和... boxLayout? – Coffee
是否嘗試添加到文本'\ n'? –
@NirLecy他想要一個*組件*直接在下一個「行」開始,而不是textarea內的文本。 –