Qt模拟键盘按键与组合键
2017-05-12 17:24
471 查看
转:http://blog.csdn.net/hqyhqyhq/article/details/50895629
Tab键:
QKeyEvent tabKey(QEvent::KeyPress, Qt::Key_Tab, Qt::NoModifier);QCoreApplication::sendEvent(this, &tabKey);
Shift+Tab键:
QKeyEvent tabKey(QEvent::KeyPress, Qt::Key_Tab, Qt::ShiftModifier);QCoreApplication::sendEvent(this, &tabKey);
焦点
Qt::TabFocus 0x1 接受Tab键焦点
Qt::ClickFocus 0x2 接受鼠标单击做焦点
Qt::StrongFocus TabFocus | ClickFocus | 0x8 接受Tab键和鼠标单击做焦点
Qt::WheelFocus StrongFocus | 0x4 滑轮作为焦点选中事件
Qt::NoFocus 0 不接受焦点
QSS设置
其次在qss代码中设置:
/*widget正常状态*/
QWidget#widget_1{
border:3px solid #CFCFCF;
}
/*widge处于焦点状态*/
QWidget#widget_1:focus{
border:5px solid #A5A6A1;
}
最后如果要想选中窗口中子控件,窗口就被聚焦的话。
比如选中widget中的button等控件,然后widget就被聚焦。
可以将button等控件设置成tabFocus或者noFocus状态。
一些函数介绍
//当前widget下一个孩子焦点
bool focusNextChild()
//当前widget上一个孩子焦点
bool focusPreviousChild()
//焦点来的事件
virtual void focusInEvent(QFocusEvent * event)
//焦点离开的事件
virtual void focusOutEvent(QFocusEvent * event)
相关文章推荐
- Qt模拟键盘按键与组合键
- C#窗体如何通过keybd_event()函数模拟键盘按键(组合键)产生事件
- Qt模拟键盘按键按下
- 用应用程序模拟键盘和鼠标按键【转】
- Qt 软键盘[模拟]之键盘触发事件
- Qt获取键盘按键事件(Windows API)----StateReader系列
- java模拟键盘按键
- 模拟键盘按键 自动输入文字 (转载)
- 如何用应用程序模拟键盘和鼠标按键
- java Robot 类模拟键盘按键和鼠标点击(全局模拟)
- VC C++ WinIo按键 键盘模拟
- keybd_event模拟键盘发送组合键
- [Python]模拟键盘同时按下几个按键
- C++模拟键盘按键的实例
- 用应用程序模拟键盘和鼠标按键
- 模拟键盘按键---很经典,总结很全面
- 在C#程序中模拟发送键盘按键消息
- Unigine 监听键盘事件和模拟按键
- Qt 获取组合键 键盘按住某键 鼠标组合实现
- 如何在程序中模拟键盘的按键事件?