Qt4虚拟键盘开发注意事项

Qt4虚拟键盘开发注意事项:
1、虚拟键盘的弹框内的所有widget要设置为Nofocus,QWindow虽然有个Toolwindow标志,但还是靠不住,最好用findChildren<QWidge *>遍历设置
2、表格编辑时,比如QTableWidget或其他自定义表格,一般时临时创建的QLineEdit,也就是说是堆内存,在编辑完成或取消编辑是,控件内存会释放,如果再往引用这个指针(比如这个指针发消息)会崩溃,典型bug:window下编辑表格时,点击到window桌面会崩溃。
3、焦点在模态窗口中编辑控间时,键盘点击不了,这时需要把这个模态窗口加一个设置:setWindowModality(Qt::WindowModal);,这个设置是指该窗口的模态只针对自己父控件。
4、由于第3点的原因,虚拟键盘的对话框或窗口也不能设置父控件,最好用m_keyboard = new Keyboard(); 不要传父控件进去。
5、键盘什么时候弹出?qApp有一个focusChanged的信号,把这个连接到键盘弹出的槽上,然后用newFocus->testAttribute(Qt::WA_InputMethodEnabled))判断该焦点控件是否为可输入控件,如果是就弹出键盘。
6、虚拟键盘和中文输入法其实是两回事。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值