資源簡介
Qt下實現數字鍵盤類,直接實例化并bunpad_test->show(),即可使用

代碼片段和文件信息
#include?“numpad.h“
#include?“ui_numpad.h“
NumPad::NumPad(QWidget?*parent)?:
????QDialog(parent)
????ui(new?Ui::NumPad)
{
????this->setWindowFlags(Qt::Tool);
????ui->setupUi(this);
????m_pParent=parent;
????signalMapper?=?new?QSignalMapper(this);
????allButtons?=?findChildren();
????for?(int?i=0;i ????????connect(allButtons.at(i)?SIGNAL(clicked())?signalMapper?SLOT(map()));
????????signalMapper->setMapping(allButtons.at(i)?allButtons.at(i)->text());
????}
????connect(signalMapper?SIGNAL(mapped(const?QString?&))?this?SLOT(doClicked(const?QString?&)));
}
NumPad::~NumPad()
{
????delete?ui;
}
void?NumPad::doClicked(const?QString?&?btnname)
{
????bool?ok;
????QString?str;
????str=“BackSpace“;
????int?key_id=btnname.toInt(&ok10)+48;
????if(btnname==“Enter“)
????{
????????this->close();
????}
????else?if(btnname==“Del“)
????{
????????QKeyEvent?keyEvent(QEvent::KeyPressQt::Key_BackspaceQt::NoModifier);
????????QApplication::sendEvent(m_pParent->focusWidget()?&keyEvent);
????}
????else
????{
????????QKeyEvent?keyEvent(QEvent::KeyPresskey_idQt::NoModifierbtnname.trimmed()false1);
????????QApplication::sendEvent(m_pParent->focusWidget()?&keyEvent);
????????//QMessageBox::about(NULL“About“QString::number(key_id));
????}
}
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件????????1348??2014-04-11?23:16??numpad.cpp
?????文件?????????630??2014-04-11?22:30??numpad.h
?????文件????????9269??2014-04-11?23:16??numpad.ui
- 上一篇:產品需求規范
- 下一篇:MMTool_5.07
評論
共有 條評論