如何防止SWT组合的大小调整?

时间:2015-10-13 09:33:24

标签: java combobox swt

当我拨打setItems(String[])时,组合框会变得更宽,以适应新项目的长度。

无论新项目有多宽,如何使其无法调整大小?

我已经用ControlListener尝试过了。我保存了组合的初始大小,并在每次调用controlResized()时设置它。结果,组合宽度保持不变,但当我调整大小时,UI的其余部分看起来很难看。这是一个巫师。我正在使用GridLayout

1 个答案:

答案 0 :(得分:2)

如果您使用GridLayout作为布局,则可以在组合的布局数据中指定widthHint

GridData data = new GridData(....);

data.widthHint = 100;

combo.setLayoutData(data);

如果这是在对话框中,您可以使用convertWidthInCharsToPixels(chars)指定字符宽度而不是像素。 Dialog也有此方法的静态版本,您可以在对话框外使用。