2017-08-25 3 views
0

ボタンの左側にローディングインジケータが付いた行にボタンを簡単に配置する方法はありますか?MigLayoutを使用して別のコンポーネントを含む行のコンポーネントの中央揃え

ボタンを常に中央に置き、ボタンの横にローディング標識(JLabel)を置いてください。

setLayout(new MigLayout("align center center")); 

add(_loadingIndicator, "center, split 2"); 
add(_applyButton, "center"); 

が、ボタンが本当に中心にされることはありませんので、2つの部品一緒にそのセンター:

This solution seems way too complicated and doesn't actually work for what I want to do.

は、私がこれまで持っていることはこれです。

答えて

0

ボタンを正確に中央に配置する方法は、レイアウトに3つの列があるようにすることです。ボタンを中央に、ローディングインジケーターを右側に配置します。 ローディングインジケータが32x32ピクセルであるとします。

setLayout(new MigLayout("debug", "[grow]32px[]0[grow]")); // The [][][]s are columns, meaning 3 columns. The numbers between them are the insets. 

add(_applyButton, "cell 1 0"); // Place the button in 2nd column, 1st row. 
add(_loadingIndicator, "cell 2 0"); // Place the indicator in 3rd column, 1st row. 

注:インセットを指定しないと、ボタンは約1秒になります。センタリングされていますが、正確に中央にはありません。デバッグパラメータは、セルのサイズを表示するのに役立ちます。単に省略することができます。

関連する問題