1、以QSpinBox为父类,自定义一个窗口部件HexSpinBox,让其可以接受并显示16进制数:
1)、定义一个类HexSpinBox,派生自HexSpinBox:
#ifndef HEXSPINBOX_H
#define HEXSPINBOX_H
#include <QSpinBox>
#include "ui_HexSpinBox.h"
class QRegExpValidator;
class HexSpinBox : public QSpinBox
{
Q_OBJECT
public:
HexSpinBox(QWidget *parent = 0);
~HexSpinBox();
private:
Ui::HexSpinBox ui;
protected:
QValidator::State validate(QString &text,int &pos ) const;
int valueFromText(const QString &text) const;
QString textFromValue(int value) const;
private:
QRegExpValidator *validator;
};
#endif // HEXSPINBOX_H
#include "HexSpinBox.h"
HexSpinBox::HexSpinBox(QWidget *parent)
: Q