2010-02-19 51 views
1

我想在運行時在按鈕單擊時在JTextPane中添加多個新的JTextArea。爲此,我爲我的JTextPane設置了Box佈局,並使用mytextpane.add()方法添加了新組件。 但它取決於佈局調整大小和重新定位,並不保留我分配的原始大小。另外當我向它添加更多的組件時,插入的組件會縮小,但是當我向JTextPane添加更多組件時,我想要一個滾動條來顯示。請幫我解決這個問題。Java Swing - JTextPane中嵌套組件(JTextArea)的問題

+0

公共類TestPane延伸javax.swing.JFrame中{ /**創建新形式TestPane */ 公共TestPane(){ 的initComponents(); } 私人無效jButton1ActionPerformed(EVT java.awt.event.ActionEvent中){// TODO添加處理代碼在這裏: jTextPane1.insertComponent(新的JTextArea( 「您好我是madhvi」)); jTextPane1.revalidate(); } /** * @參數ARG遊戲命令行參數 */ 公共靜態無效主要(字符串ARGS []){ 了java.awt.EventQueue.invokeLater(新的Runnable(){ 公共無效運行(){ 新測試 – Nilesh 2010-02-19 06:54:09

+0

嗨camickr,我已經完成了你和它的工作正確,但我現在想要的唯一的事情是每次我想插入新的組件,我怎麼做到這一點?和我的jtextArea應該採取與我的JtextPane相同的寬度。 – Nilesh 2010-02-19 06:56:34

回答

1

通常您將組件添加到JPanel,所以我不確定您爲什麼試圖將它們添加到JTextPane中。基本代碼:

panel.add(someComponent); 
panel.revalidate(); 

但是,如果你真的試圖將它們添加到JTextPane中,那麼你應該使用的JTextPane的insertComponent()方法。

如果您需要更多幫助,請發送您的SSCCE顯示問題。

+0

請幫助我camickr – Nilesh 2010-02-19 08:42:06

0

我懷疑JTextPane是否應該用於此目的的組件。 JTextPane適合於當你想添加一個多行文本編輯界面到你的UI (比如嵌入標記編輯器)。可能是JScrollPane會更好地滿足您的需求。