嵌入式培训机构四个月实训课程笔记(完整版)-C++和QT编程第五天-Qt 键盘(物联技术666)

本文是关于Qt框架中键盘事件处理的详细笔记,重点介绍了如何使QWidget获取焦点,理解focusPolicy,以及如何处理keypress和keyrelease事件。内容涵盖了QKeyEvent类、键盘消息类型以及特殊键如Tab的处理。适合嵌入式开发和Qt应用开发者学习。
摘要由CSDN通过智能技术生成

链接:https://pan.baidu.com/s/1Rq8PQRV1liuIXML0JKOX_Q?pwd=1688
提取码:1688

focus

一个拥有焦点(focus)的QWidget才可以接受键盘事件。有输入焦点的窗口是活动窗口或活动窗口子窗口或子子窗口等。

焦点移动的方式有以下几种:

按下Tab或Shift+Tab

注意:文本编译器(一般需要插入Tab),或者WebView(需要Tab来移动超链接焦点) 等

Qt中,需要输入Tab的地方可以用 Ctrl+Tab 或 Ctrl+Shift+Tab 替代。

点击一个QWidget

建议:只对接受文本输入的Widget启用该功能

按下键盘的快捷键

QLabel::setBuddy(), QGroupBox,以及 QTabBar 支持

使用鼠标滚轮

用户移动焦点

程序将决定被设置focus的Widget的哪一个子Widget获得焦点

注意:如果一个 Widget 已经 grabKeyboard,所有键盘事件将发送到该Widget而不是获得焦点的Widget

focusPolicy

一个QWidget获得焦点的方式受 focusPolicy 控制

Qt::TabFocus

通过Tab键获得焦点

Qt::ClickFocus

通过被单击获得焦点

Qt::StrongFocus

可通过上面两种方式获得焦点

Qt::NoFocus

不能通过上两种方式获得焦点(默认值),setFocus仍可使其获得焦点

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值