2017-03-04 40 views
1

我正在開發Burp擴展並添加額外的選項卡。我必須返回java.awt.component,所以我決定javax.swing.JPanel會很好。它必須是一個JLabel和JTextField中我的選項卡,代碼在這裏:如何在Burp Extension中控制JTextField的大小?

  JPanel panel = new JPanel(); 
      panel.setLayout(new BoxLayout(panel,Y_AXIS)); 

      JLabel label = new JLabel("hostname : "); 
      panel.add(label); 
      JTextField tf = new JTextField("text"); 
      panel.add(tfHost); 

我想在左上角的小文本和文本框,但我的文本字段伸出我所有的屏幕上。我需要做些什麼來解決它?也許我必須改變佈局管理器?

回答

1

問題是BoxLayout將允許組件增長以填充面板的可用空間。

所以最簡單的解決方案是將面板添加到另一個面板,該面板將尊重BoxLayout面板的大小。

喜歡的東西:

JPanel wrapper = new JPanel(); // uses FlowLayout by default. 
wrapper.add(panel); 
frame.add(wrapper); 

現在,當你包裝面板添加到框架,包裝板將擴大規模,但它不會影響加入到包裝面板的組件。