フォームがあり、それを 2 つの列に編成したいと考えています。最初は長くてスクロール可能で、その他は常に右側にとどまる必要があります。2 番目の列は幅を狭くして、画面スペースを取りすぎないようにする必要があります。
私のコードは次のようになります:
@Order(1000.0)
public class MainBox extends AbstractGroupBox {
@Override
protected TriState getConfiguredScrollable() {
return TriState.FALSE;
}
@Order(1000.0)
public class OfferBox extends SxAbstractGroupBox {
@Override
protected TriState getConfiguredScrollable() {
return TriState.TRUE;
}
@Override
protected int getConfiguredGridColumnCount() {
return 1;
}
@Override
protected int getConfiguredGridX() {
return 0;
}
@Override
protected int getConfiguredGridY() {
return 0;
}
@Override
protected double getConfiguredGridWeightX() {
return 1; // This should stretch this box
}
......
}
@Order(4000.0)
public class ShortCutBox extends AbstractGroupBox {
@Override
protected TriState getConfiguredScrollable() {
return TriState.TRUE;
}
@Override
protected int getConfiguredGridColumnCount() {
return 1;
}
@Override
protected int getConfiguredGridX() {
return 1;
}
@Override
protected int getConfiguredGridY() {
return 0;
}
@Override
protected double getConfiguredGridWeightX() {
return 0; // this defined that box shouldn't stretch
}
@Override
protected int getConfiguredWidthInPixel() {
return 200; // This should give me fix width 200
}
@Order(4100)
public class MyButton1 extends AbstractButton {
}
@Order(4200)
public class MyButton2 extends AbstractButton {
}
....
}
}
しかし、この構成は次のようなレイアウトを提供します:
ボタンを設定すると
@Override
protected int getConfiguredHorizontalAlignment() {
return 1;
}
それは正しいように見えますが、問題はボックスがまだ右のボックスがまだ左のボックスの上に広がっているため、フィールドのスクロールとクリックが左側のパネルの右側で機能しないことです。(黒い四角の中)
私は何が欠けていますか?