2016-08-23 86 views
0
JPanel panel = new JPanel(); 

panel.setLayout(new BoxLayout(panel, BoxLayout.PAGE_AXIS)); 

JPanel topPanel = new JPanel(new FlowLayout()); 

..... 

JPanel centrePanel = new JPanel(new FlowLayout(10, 0)); 

........ 

JScrollPane scrollPane = new JScrollPane(table); 

scrollPane.setPreferredSize(new Dimension(100, 160)); 

centrePanel.add(glListScrollPane); 

........ 

........ 


JPanel bottomPanel = new JPanel(); 

bottomPanel.setLayout(new GridLayout(0, 2)); 

...... 

........ 

panel.add(topPanel, BorderLayout.CENTER); 

panel.add(centrePanel, BorderLayout.CENTER); 

panel.add(bottomPanel, BorderLayout.CENTER); 

frame.add(panel); 

frame.add(standardButtonPanel); 


public void lockScreen(boolean editable) { 

standardButtonPanel.button1.setVisible(editable); 

...... 

} 

當進行編輯和取消編輯時。該小組正在改變其位置。 我已經使用BoxLayout,因爲我希望組件有自己的尺寸,用戶也可以調整屏幕的大小。 有沒有其他方法?我可以在哪裏解決佈局問題?當按鈕可見並且不可見時,框佈局組件移動

回答

1

而不是使用setVisible,嘗試使用setEnabled,因爲它劑量隱藏按鈕(因此不影響用戶界面),但使它使最終用戶不能按下按鈕。

+0

我們在整個產品中都有標準按鈕和相同功能,我無法更改此功能。現在我已經試過\t \t panel.add(Box.createVerticalGlue());但它也沒有幫助。 –