• 7983阅读
  • 1回复

点击按钮如何发送一个字符到文本框?? [复制链接]

上一主题 下一主题
离线xuyantao
 
只看楼主 倒序阅读 楼主  发表于: 2008-04-18
— 本帖被 XChinux 执行加亮操作(2008-04-19) —
想做一个模拟的数字键盘,包括0~9个数字。当点击按钮的时候会发送相应的字符到文本框,效果和直接点击键盘一样。思考半天也没有结果。网上给了一个方法就是
QApplication::postEvent(lineEdit, new QKeyEvent(QEvent::KeyPress,Key_1,'1',0)););
我使用按钮的clicked()信号调用它,但是当我点击按钮的时候,一点反应都没有。不知道怎么回事。有没有其他办法实现模拟键盘呢??请大家帮忙给点思路!谢谢!

PS: 有很多个文本框,我应该怎么获取当前接受输入的那个?
[ 此贴被xuyantao在2008-04-18 13:02重新编辑 ]
离线xuyantao
只看该作者 1楼 发表于: 2008-04-18
结帖
还是我自己结帖吧!

获取键盘焦点部件:
QWidget * QApplication::focusWidget () const
返回拥有键盘输入焦点的应用程序窗口部件,或者在这个应用程序中没有窗口部件拥有焦点,返回0。

模拟键盘的实现:

点击按钮后调用一个函数获取键盘焦点部件(QLineEdit),使用insert(QString)插入相应字符就可以了。
[ 此贴被xuyantao在2008-04-21 22:52重新编辑 ]
快速回复
限100 字节
 
上一个 下一个