【发布时间】:2015-05-13 06:21:07
【问题描述】:
我无法理解 SWT SelectionListener 中两种方法之间的区别。 javadoc如下:
无效 org.eclipse.swt.events.SelectionListener.widgetSelected(SelectionEvent e)
在控件中发生选择时发送。
例如,当用户选择一个项目时,选择发生在列表中 或使用键盘或鼠标的项目。在某些平台上,该事件 当按下鼠标按钮或键时发生。在其他人身上,它会发生 当鼠标或键被释放时。确切的键或鼠标手势 导致此事件是特定于平台的。
无效 org.eclipse.swt.events.SelectionListener.widgetDefaultSelected(SelectionEvent e)
在控件中发生默认选择时发送。
例如,在某些平台上,默认选择出现在列表中,当 用户双击一个项目或在文本中键入返回。一些 平台,当按下鼠标按钮或键时发生该事件。在 其他,当鼠标或键被释放时发生。确切的密钥或 导致此事件的鼠标手势是特定于平台的。
在我看来widgetSelected() 在用户以任何方式选择小部件时都会被调用。 widgetDefaultSelected() 在用户完成与小部件交互时被调用。对于 Text 小部件,按 Enter 键;对于列表,这将是双击列表项;对于日期,按 Enter 键。
这种理解正确吗?
【问题讨论】: