1. 程式人生 > >【原創】QT簡單計算器

【原創】QT簡單計算器

代碼 creator AD new info 問題 連接 body short

代碼

//main.cpp

#include "calculator_111.h"
#include <QtWidgets/QApplication>

int main(int argc, char *argv[])
{
QApplication a(argc, argv);
Calculator_111 w;
w.show();
return a.exec();
/* //QT creator 
Calculator_111 win; 
win.show();
return a.exec(); */

}
//calculator_111.h

#ifndef CALCULATOR_111_H
#define CALCULATOR_111_H #include <QtWidgets/QMainWindow> #include "ui_calculator_111.h"IDB_BITMAP1 class Calculator_111 : public QMainWindow { Q_OBJECT public: Calculator_111(QWidget *parent = 0); ~Calculator_111(); private: Ui::Calculator_111Class ui; /*QTdesiner畫的界面*/ void open(); /**/ QAction
*openAction; /**/ }; #endif // CALCULATOR_111_H
//calculator_111.cpp


#include <QAction>
#include <QMenuBar>
#include <QMessageBox>
#include <QStatusBar>
#include <QToolBar> /**/

#include "calculator_111.h"
/*C++ 的繼承的語法的一部分,說明 MainWindow 的構造函數之前需要調用父類 QMainWindow 的帶有參數的構造函數。一般而言,子類應該調用父類的同參數構造函數,以便正確構造父類 
*/ Calculator_111::Calculator_111(QWidget *parent) : QMainWindow(parent) { ui.setupUi(this); /* 來自QTdesigner */ setWindowTitle(tr("Calculate Window")); //在MainWindow類中添加一個私有變量openAction openAction = new QAction(QIcon("logo111.png"), tr("&Open..."), this);//路徑問題!!! //在堆上創建了openAction對象。在QAction構造函數,我們傳入了一個圖標、一個文本和 this 指針 openAction->setShortcuts(QKeySequence::Open); openAction->setStatusTip(tr("Open an existing file")); /*setStatusTip()則實現了當用戶鼠標滑過這個 action 時,會在主窗口下方的狀態欄顯示相應的提示。 connect()函數,將這個QAction的triggered()信號與Calculator_111類的open()函數連接起來。 當用戶點擊了QAction時,會自動觸發MainWindow的open()函數*/ connect(openAction, &QAction::triggered, this, &Calculator_111::open); QMenu *file = menuBar()->addMenu(tr("&File")); file->addAction(openAction); QToolBar *toolBar = addToolBar(tr("&File")); toolBar->addAction(openAction); statusBar() ; } Calculator_111::~Calculator_111() { } //在MainWindow類中添加了一個私有函數open() void Calculator_111::open() { QMessageBox::information(this,tr("Information"),tr("open")); }

【原創】QT簡單計算器