看板 C_and_CPP 關於我們 聯絡資訊
那我也來補一個 QT 版... 可以跨平台喔....^^ //------------------------------------------------ // qweightconverter.h //------------------------------------------------ #ifndef QWEIGHTCONVERTER_H #define QWEIGHTCONVERTER_H #include <QWidget> class QLabel; class QLineEdit; class QWeightConverter : public QWidget { Q_OBJECT public: QWeightConverter(); private: QLabel *label1; QLabel *label2; QLineEdit *inputEdit; QLineEdit *outputEdit; private slots: void process(const QString &in); }; #endif // QWEIGHTCONVERTER_H //-------------------------------------------- // qweightconverter.cpp //-------------------------------------------- #include "qweightconverter.h" #include <QLineEdit> #include <QIntValidator> #include <QGridLayout> #include <QLabel> #include <QRegExp> #include <QRegExpValidator> #include <QString> QWeightConverter::QWeightConverter() { this->setWindowTitle("KG -> Pound"); this->resize(300,200); QRegExp regExp("[1-9][0-9]{0,1}"); label1 = new QLabel(("Input your weight (KG)")); label2 = new QLabel(("Your weight is (Pounds)")); inputEdit = new QLineEdit; inputEdit->setValidator(new QRegExpValidator(regExp, this)); outputEdit = new QLineEdit; outputEdit->setReadOnly(true); QGridLayout *layout = new QGridLayout; layout->addWidget(label1,0,0); layout->addWidget(inputEdit, 0, 1); layout->addWidget(label2,1,0); layout->addWidget(outputEdit, 1,1); this->setLayout(layout); connect(inputEdit, SIGNAL(textChanged(QString)), this, SLOT(process(QString))); } void QWeightConverter::process(const QString &in) { if (inputEdit->hasAcceptableInput()) { float w = in.toFloat(); QString tmp; tmp.setNum(w/0.454,'F',4); outputEdit->setText(tmp); } else { outputEdit->setText(""); } } //----------------------------------------------------- // main.cpp //----------------------------------------------------- #include <QApplication> #include "qweightconverter.h" int main(int argc, char *argv[]) { QApplication app(argc, argv); QWeightConverter *converter = new QWeightConverter; converter->show(); return app.exec(); } //------------------------------------------------------ // WeightConvert.pro //------------------------------------------------------ SOURCES += main.cpp \ qweightconverter.cpp HEADERS += qweightconverter.h -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 218.168.29.85