由于只需要几个数字按键,没必要加入软件盘,在输入框旁边直接加了一块数字键,超简单,删除键使用的键盘事件,其余均为在lineedit插入字符,超级easy!对于简单按键需求的同学有参考价值!
1.在界面添加0-9这几个按钮,外加一个delete键
2.在数字键上右键转到槽函数,一行代码解决问题,0-9一个样,改个数就OK!
void GetfileDialog::on_pushButton_0_clicked()
{
ui->enter_lineEdit->insert("0");//enter_lineEdit为需要输入数字的地方
}
3.在头文件中#include<QKeyEvent>,然后在私有变量中声明QKeyEvent *event,最后转到删除键的槽函数:
void GetfileDialog::on_pushButton_del_clicked()
{
event=new QKeyEvent(QEvent::KeyPress, Qt::Key_Backspace, Qt::NoModifier);//新建一个键盘事件
ui->enter_lineEdit->setFocus();
QApplication::sendEvent(focusWidget(),event);
}
4.编译运行,界面截图如下。(请忽略它的丑陋,哈哈,有好的styleSheet欢迎推荐!)
参考文章:嵌入式QT软键盘