SWT List
インスタンスが埋め込まれたComposite
に基づくクラスがあります。デフォルトの設定を使用すると、WinXPシステムで5行上のリストになります。ハードコーディングされたピクセル値やDPI設定などに依存せずに、リストの高さ(および周囲のコンポジット)を固定の行数、たとえば3に設定するにはどうすればよいでしょうか?SWTリストの行の高さを設定する方法は?
public FileSetBox(Composite parent, int style)
{
super(parent, style);
setLayout(new FillLayout());
this.list = new List(this, SWT.V_SCROLL);
...
}
更新:
以下の作品が、それは考慮に覆われている最後の行の一部になり、境界、で追加された高さを取ることはありません。どのようにこれを計算する方法も、何ですか?
public FileSetBox(Composite parent, int style)
{
...
GC gc = new GC(this);
gc.setFont(this.list.getFont());
this.preferredHeight = gc.getFontMetrics().getHeight() * 3;
gc.dispose();
...
}
@Override
public Point computeSize(int arg0, int arg1)
{
Point size = super.computeSize(arg0, arg1);
return new Point(size.x, this.preferredHeight);
}
私はそれを見落としてしまった。どうもありがとう :-) –