我有同樣的事情,因爲這傢伙的麻煩missbehave:換行,導致JScrollPane的與MiGLayout
MigLayout JTextArea is not shrinking when used with linewrap=true
和我以前的答案中的一個描述的解決方案;明確設置最小尺寸。如果將包含JTextArea的JPanel直接放在JFrame中,然後調整窗口大小,這可以很好地工作。
但是,如果將包含JTextArea的面板放置在JScrollPane中,則 會再次出現相同的問題。爲什麼是這樣,以及如何解決它?
乾杯
編輯:一個例子
public class MiGTest2 extends JFrame{
public MiGTest2(){
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
JPanel panel = new JPanel(new MigLayout("fillx, debug", "[fill]"));
JTextArea textArea = new JTextArea();
textArea.setLineWrap(true);
panel.add(textArea, "wmin 10");
//panel.add(new JTextField());
JScrollPane scrollPane = new JScrollPane(panel);
//add(panel);
add(scrollPane);
pack();
}
public static void main(String[] args){
new MiGTest2().setVisible(true);
}
}
如果取消註釋//add(panel);
和評論add(scrollPane);
,縮小窗口的大小也將縮小的JTextArea。也就是說,它不適用於JScrollPane。另請注意,佈局管理器在第一次放大後如何翻轉並開始「搖動」其所有內容時,縮小窗口大小
嗯不是這樣(由克列奧帕特拉).. http://forums.oracle.com/forums/thread.jspa?threadID=2211458&start=16&tstart= 0 – mKorbel 2011-05-16 22:21:12
@mrKorbel對不起,但我不確定你在這裏指的是什麼? – Datoraki 2011-05-16 22:46:06