2017-09-19 6 views
0

進捗バーの高さを制御したい。 私は、次のコードを使用しています:JProgressBarの高さを制御するJava Swing

JPanel panel = new JPanel(new GridLayout(1,2)); 
JLabel label = new JLabel("Some text"); 
JPanel jpb = new JPanel(new BorderLayout()); jpb.setBackground(Color.WHITE); 
JProgressBar progressBar = new JProgressBar(); 

//progressBar.setPreferredSize(new Dimension(20,)); 
progressBar.setForeground(Color.RED); 
progressBar.setPreferredSize(new Dimension(20,3)); 
progressBar.setValue(40); 
progressBar.setStringPainted(true); 

jpb.add(progressBar, BorderLayout.CENTER); 
panel.add(label); 
panel.add(jpb); 

をしかし、プログレスバーは、竜のように突き出。解決策をお勧めします。

+1

プログレスバーをBorderLayoutの 'CENTER'に追加すると、すべての空き領域が使用されます。 BorderLayoutとGridLayoutの使用をよりよく理解する必要があります。詳細および使用例については、[Layout Manager](http://docs.oracle.com/javase/tutorial/uiswing/layout/visual.html)のSwingチュートリアルを参照してください。あなたのGridLayoutについて忘れて、フレームのデフォルトのBorderLayoutマネージャを使用し、プログレスバーをBorderLayout.PAGE_STARTに追加してから、2番目のパネルをBorderLayout.CENTERに追加します。 – camickr

答えて

0

GridBagLayoutを使用することをお勧めします。
1. Jpanelを使用してBorderlayoutを設定します(コード内で既に行われています)
2.別のJPanelを作成し、1行3列のGridBagLayoutを設定します。
3. 1st JPanelの中​​央に2番目のJPanelを投稿します。
4.幅とJProgressBarの

これが役に立つことを願っての高さのためのあなたの視覚的なニーズに従って、列のサイズを設定し
5.第一欄にごJProgressBarのを追加します。 :-)

関連する問題