SWT中enter键实现tab键的功能

在SWT中组件会对tab,enter,上下左右方向键之类的有其默认的操作,可以通过添加TraverseListener监听来实现对这些默认的功能的一次重新定制。

TraverseListener:有一股keyTraversed(TraverseEvent e)方法,TraverseEvent是事件信息

TraverseEvent有两个参数:detail和doit。detail和doit。

detail属性指定事件类型。

doit指定该事件是否该执行。

除了这两个属性,如果我们要改变tab,enter,上下左右方向键响应的行为,可以定制keyTraversed方法的。

下面提供一个最简单的功能,enter键实现tab键的功能:

public class TraverseListener implements
        org.eclipse.swt.events.TraverseListener
{

    @Override
    public void keyTraversed(TraverseEvent e)
    {
        //TRAVERSE_RETURN 是回车键
        if (e.detail == SWT.TRAVERSE_RETURN)
        {
            e.detail = SWT.TRAVERSE_TAB_NEXT;
            e.doit = true;
        }
    }
}
 

猜你喜欢

转载自lengbingteng-163-com.iteye.com/blog/1420842