2018年1月16日 星期二

主視窗架構

首先:
主使窗的類別名稱我們訂為onlywindow 專案產生後生成3個文件夾 
先看到自動生成的<onlywindow.h>
#ifndef ONLYWINDOW_H
#define ONLYWINDOW_H

#include <QMainWindow>

namespace Ui {
class onlywindow;
}

class onlywindow : public QMainWindow
{
    Q_OBJECT

public:
    explicit onlywindow(QWidget *parent = 0);
    ~onlywindow();

private:
    Ui::onlywindow *ui;
};

#endif // ONLYWINDOW_H


接著看到基本的main.cpp主體
基本上這裡的變數會依據你所訂的框架自動生成
EX: onlywindow w;
比較常來這裡做調整的多是跟視窗顯示的順序與權限有關西
EX: w.show();
#include "onlywindow.h"
#include <QApplication>

int main(int argc, char *argv[])
{
    QApplication a(argc, argv);
    onlywindow w;
    w.show();

    return a.exec();
}
在看到onlywindow.cpp
#include "onlywindow.h"
#include "ui_onlywindow.h"

onlywindow::onlywindow(QWidget *parent) :
    QMainWindow(parent),
    ui(new Ui::onlywindow)
{
    ui->setupUi(this);
  
}

onlywindow::~onlywindow()
{
    delete ui;
}

可以看到在一開頭因為之前在.h中已經將onlywindow主窗類別名稱加入Ui空間中
所以我們現在能使用
onlywindow::onlywindow(QWidget *parent): 來當作類似Main()的視窗函式