qt移动焦点_qt活动窗口和焦点窗口,按键获取

本文详细介绍了Qt中如何处理焦点移动,包括鼠标点击、键盘快捷键、鼠标滚轮等操作下的焦点变化。讨论了窗口部件如何通过setFocusPolicy()函数设置焦点策略,以及在不同平台上Qt如何处理焦点行为的平台差异。此外,还阐述了在用户移动焦点到窗口时,如何决定哪个窗口部件接收焦点,并提供了焦点策略的操作函数说明。
摘要由CSDN通过智能技术生成

情况是几乎没用到的窗口部件,并且在窗口部件上有一些移动焦点的键盘快捷键或者错误处理。

(2)用户点击一个窗口部件。

在使用鼠标或者其它指针设备的计算机中,用鼠标点击一个窗口部件是一种比按Tab键更常用的方法。

当鼠标点击把焦点移到一个窗口部件时,对于编辑器窗口部件,它也会移动文本光标(窗口部件的内部焦点)到鼠标被点击的地点。

鼠标点击移动焦点是大多数窗口部件必须支持的,有时窗口部件需要避免鼠标点击移动焦点。例如:在一个字处理程序中,当用户点击"B"(粗体)工具按钮,键盘焦点应该保留在原来的位置。在Qt中,只有QWidget::setFocusPolicy()函数影响点击焦点。

(3)用户按下一个键盘快捷键。

使用键盘快捷键来移动焦点不是很常用。这种情况可能会隐含地发生在打开的模式对话框中,但是也会显式地发生在使用焦点加速器中,例如在QLabel::setBuddy()、QGroupBox和QTabBar提供的加速器中。

用户想让焦点跳到的窗口部件都应支持快捷键焦点。例如:一个Tab对话框为它的每一个页提供键盘快捷键,所以用户可以按下比如Alt+P来跳到打印页面。但只能有少量的快捷键,并且为命令提供键盘快捷键也很重要,如:在标准快捷键列表中,Alt+P也可以用来粘贴、播放或打印。

(4)用户使用鼠标滚轮。

在Microsoft Windows上,鼠标滚轮的用法是一直由有键盘焦点的窗口部件处理。在Mac OS X和X11上,它由获得其它鼠标事件的窗口部件处理。

Qt处理这种平台差异的方法是当滚轮被使用时,让窗口部件移动键盘焦点。每个窗口部件上有合适的焦点策略,应用程序可以在Windows、Mac OS X

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值