用Qt練習C++寫一個小的階乘對話方塊

來源:互聯網
上載者:User

先來看代碼

/********************************************************************************** QT Study**** Created: Sat Aug 4 19:00:21 2012**      by: Grant**** ********************************************************************************/#include <QApplication>#include <QLabel>#include <QPushButton>#include <QHBoxLayout>#include <string>#include <sstream>#include <QString>#include <QDialog>#include "ui_gotocelldialog.h"using namespace std;int frac(int N){if (N > 1)returnN * frac(N-1);return 1;}int main(int argc, char *argv[]){QApplication app(argc, argv); //QApplication管理圖形使用者介面的各種應用,比如滑鼠動作,預設顏色等。int result, number = 5;result = frac(number);QString title;QWidget *window = new QWidget;window->setWindowTitle("Scientific Computing Demo by Grant");QLabel *label = new QLabel("<h2><i>The fractional of 5 is </i> </h2>" + title.setNum(result)  );QPushButton *button = new QPushButton("Quit");QObject::connect( button,SIGNAL(clicked()),&app,SLOT(quit()) );QVBoxLayout *layout = new QVBoxLayout;QDialog *diaglog = new QDialog; Ui::GoToCellDiag ui; ui.setupUi(diaglog);layout->addWidget(diaglog);layout->addWidget(label);layout->addWidget(button);window->setLayout(layout);window->show();return app.exec();}

讓我們來看看一條有趣運算式

QDialog *diaglog =newQDialog;

這條語句是先開闢一段記憶體空間,然後在其上建立一個QDialog組件(widget)。Widget是windowgadget(視窗配件)的縮寫。

視窗設計好了,那麼我們需要在上面加內容,即初始化。初始化前,我們需要聲明一個類ui,這個ui包含了表單的子視窗以及布局,就是我們在designer裡邊看到的。

Ui::GoToCellDiag ui;

然後用對象ui裡邊的成員函數setupUi來初始化對話方塊。

ui.setupUi(diaglog);

過程就是兩個開闢記憶體,然後初始化視窗。

Qt還是蠻有意思的。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.