更改SWT中组合框下拉列表的方向

时间:2010-06-15 22:03:23

标签: java user-controls user-interface swt

我正在SWT中构建一个Eclipse插件,我遇到了以下问题:我的一个字段是一个组合框,在某些情况下,它可能有相当长的项目作为选择选项。我的插件在屏幕的右侧运行,因此当您使用组合框时,组合框的右侧会被切断。所以,我的问题是:有没有办法改变相对于组合控件的下拉列表的对齐方式?它似乎是永久性的左对齐......我很确定你可以改变Swing的方向(虽然我见过的唯一的地方是在Substance UI演示中。组合框选项卡有北方的方框,东南和西部的弹出方向......对于我的申请,我需要类似西方的弹出窗口

注意:设置实际文本限制是最后一种情况选项;动态设置文本限制会有相当多的猜测(因为可以调整窗口小部件的视图大小)。

这是一个picture(抱歉,我只能有一个链接,没有图片:( ......我需要更多代表:p)

该行的左侧:正确的宽度 - 视图足够宽,以便组合下拉列表显示所有文本;你可以在右侧看到滚动条。

该行的右侧:太小 - 此处,视图已调整大小,并且组合下拉滚动条(以及一些文本)被屏幕右侧切断。我总是有更多可用的屏幕空间(因为它总是在屏幕的右侧),但组合下拉列表总是出现在右下方。

希望这很清楚。

2 个答案:

答案 0 :(得分:0)

现在我理解你的问题了。 使用CCombo代替Combo。它应该自动定位下拉列表以使其适合。

答案 1 :(得分:0)

您好我遇到了同样的问题。 CCombo做了这个伎俩,但它看起来不太好,它有像this one这样的bug,不会修复。

combo.setOrientation(SWT.RIGHT_TO_LEFT);为你做的伎俩。