java - 为什么 slider 的 SWT Selection 事件从来没有详细信息?

标签 java swt cross-platform

我正在关注 SWT Slider Snippet 示例,在 fedora 上事件详细信息始终为 0 又名 SWT.NONE,但详细信息在 Windows 7 上设置。示例可以在此处找到 http://www.java2s.com/Code/Java/SWT-JFace-Eclipse/SWTSliderprintscrolleventdetails.htm这是我正在运行的代码。

public static void main(String[] args) {
    Display display = new Display();
    Shell shell = new Shell(display);
    final Slider slider = new Slider(shell, SWT.HORIZONTAL);
    slider.setBounds(10, 10, 200, 32);
    slider.addListener(SWT.Selection, new Listener() {
        public void handleEvent(Event event) {
            String string = "SWT.NONE";
            switch (event.detail) {
                case SWT.DRAG:
                    string = "SWT.DRAG";
                    break;
                case SWT.HOME:
                    string = "SWT.HOME";
                    break;
                case SWT.END:
                    string = "SWT.END";
                    break;
                case SWT.ARROW_DOWN:
                    string = "SWT.ARROW_DOWN";
                    break;
                case SWT.ARROW_UP:
                    string = "SWT.ARROW_UP";
                    break;
                case SWT.PAGE_DOWN:
                    string = "SWT.PAGE_DOWN";
                    break;
                case SWT.PAGE_UP:
                    string = "SWT.PAGE_UP";
                    break;
            }
            System.out.println(slider.getSelection());
            System.out.println("Scroll detail -> " + string);
        }
    });
    shell.open();
    while (!shell.isDisposed()) {
        if (!display.readAndDispatch()) display.sleep();
    }
    display.dispose();
}

最佳答案

this bugthis bug据说已解决,但在我的机器上不起作用(Ubuntu 12.04 eclipse 版本是 Kepler)。

因此提出了一个新的bug here .

引用我的帖子SWT Scrollbar events on Linux在这里我说的是检测这些事件的其他方法。

另外请等待检查 Eclipse Luna(将于 6 月 25 日发布)。

关于java - 为什么 slider 的 SWT Selection 事件从来没有详细信息?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24290801/

相关文章:

java - 在 Java 中按交集后的特定属性对对象列表进行排序

label - 获取带有自动换行的 SWT 标签的大小

java - 将 Swing GUI 组件的属性绑定(bind)到自定义类方法(属性)

java - 更改 Android Tabview 中的标签文本

java - 如何覆盖特定的 Seam 组件?

java - 在 Gradle 中使用 SWT 无法解决所有依赖项

java - 如何在SWT中实现父子关系复选框?

php - 为什么 margin-top 在 Mac 上减少了 2px?

java - java.awt.Desktop.getDesktop() 不支持的平台

c - 样式化的跨平台原生小部件和窗口