DuiVision开发教程(8)-控件的快捷键和焦点的支持

24 篇文章 0 订阅
21 篇文章 3 订阅

DuiVision的每个控件都可以设置快捷键,设置方法是在xml中设置shortcut属性,例如下面这个控件设置快捷键为ESC键:

<imgbtn name="button.close" pos="-45,0,-0,29" skin="IDB_BT_CLOSE" shortcut="ESC" />

快捷键的写法是flag+char的形式,flag可以是CTRL、ALT、SHIFT,分别表示几个控制键是否按下,char是键的名字,可以用的包括字母、数字,以及下面这些键:

快捷键字符串含义
RETURN回车
ESC取消
BACK回退
TABTAB键
SPACE空格键
PRIOR上翻页
NEXT下翻页
END到文件尾
HOME到文件头
LEFT、UP、RIGHT、DOWN几个方向键
PRINT打印
INSERT插入
DELETE删除
F1-F12功能键

如果没有flag,也可以直接写键的名字。
某个控件如果设置了快捷键,当按下快捷键时候,相当于在控件上点击了一次鼠标,实际动作就是自动触发针对这个控件的一次鼠标按下消息和鼠标放开消息。

DuiVision的控件支持焦点状态,如果一个控件要支持焦点的话,可以通过设置控件的tabstop属性来实现,tabstop为1表示此控件可以处于焦点状态,tabstop属性也可以通过API查询,就是控件的IsTabStop函数。一些控件默认是会设置为tabstop为1的状态的,这些控件包括按钮、检查框、RadioButton、编辑框。
焦点的切换有两种方式,一种是通过键盘操作,TAB键和SHIFT+TAB键分别表示切换到下一个或上一个可以获取焦点的控件上面,另一种方式是鼠标点击了一个控件之后,这个控件就会成为当前的焦点控件。为了区分焦点控件,DuiVision提供了默认的焦点控件显示方式,就是在控件的内部靠近控件边框位置画灰色的虚线框,有些控件不会采用这样的方式画焦点,例如编辑框处于焦点状态时候会显示编辑框的输入光标,而编辑框失去焦点时候会取消光标的显示,同时会在编辑框内显示出编辑框控件的tip信息,如果不想让控件在焦点状态时候显示虚线框,可以设置控件的showfocus属性为0。


DuiVision开源代码下载地址(github):https://github.com/blueantst/DuiVision
蓝蚂蚁工作室主页:http://www.blueantstudio.net
DuiVision QQ群:325880743
微信公众号:blueantstudio 或搜索 蓝蚂蚁工作室

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值