1*4882a593Smuzhiyun #ifndef KEYBUTTON_H 2*4882a593Smuzhiyun #define KEYBUTTON_H 3*4882a593Smuzhiyun #include <QPushButton> 4*4882a593Smuzhiyun 5*4882a593Smuzhiyun class KeyButton : public QPushButton 6*4882a593Smuzhiyun { 7*4882a593Smuzhiyun Q_OBJECT 8*4882a593Smuzhiyun public: 9*4882a593Smuzhiyun KeyButton(QWidget *parent=Q_NULLPTR); 10*4882a593Smuzhiyun void setValue(const QString &value); 11*4882a593Smuzhiyun QString getValue(); 12*4882a593Smuzhiyun void setText(const QString &text); 13*4882a593Smuzhiyun void shift(); 14*4882a593Smuzhiyun void caps(); 15*4882a593Smuzhiyun void setKey(Qt::Key key); 16*4882a593Smuzhiyun Qt::Key getKey(); 17*4882a593Smuzhiyun private: 18*4882a593Smuzhiyun void paintEvent(QPaintEvent *e) override; 19*4882a593Smuzhiyun void mousePressEvent(QMouseEvent*e); 20*4882a593Smuzhiyun void mouseReleaseEvent(QMouseEvent*e); 21*4882a593Smuzhiyun QString m_value; 22*4882a593Smuzhiyun QString m_text; 23*4882a593Smuzhiyun bool m_bCaps; 24*4882a593Smuzhiyun Qt::Key m_key; 25*4882a593Smuzhiyun bool m_pressed; 26*4882a593Smuzhiyun }; 27*4882a593Smuzhiyun 28*4882a593Smuzhiyun #endif // KEYBUTTON_H 29