giovedì 31 gennaio 2013

Creare una nuova finestra in Qt

Questo post e' per indicare come creare un progetto in Qt basato su piu' form e come farle apparire

Si parte creando un progetto standard (Qt Gui Application) specificando una QMainWindow
Una volta terminata la fase di creazione si clicca sul ramo Form del progetto e si aggiunge una nuova Q Designer Form class

avremo quindi alla fine due form denominati mainwindow e mainwindow2.

A questo punto si aggiunge un pulsante a mainwindow e si aggiunge uno slot su OnClicke e si inizia a modificare il codice come segue (modifiche evidenziate in giallo)

mainwindow.h
---------------------------------

#ifndef MAINWINDOW_H
#define MAINWINDOW_H

#include <QMainWindow>
#include "mainwindow2.h"

namespace Ui {
    class MainWindow;
}

class MainWindow : public QMainWindow
{
    Q_OBJECT

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

private slots:
    void on_pushButton_clicked();

private:
    Ui::MainWindow *ui;
};

#endif // MAINWINDOW_H


---------------------------------

mainwindow.cpp
---------------------------------

#include "mainwindow.h"
#include "ui_mainwindow.h"
#include "mainwindow2.h"

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

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

void MainWindow::on_pushButton_clicked()
{
    MainWindow2 *j = new MainWindow2();
    j->show();
}

---------------------------------
Il risultato finale e' quello mostrato in immagine


Alla pressione del pulsante sulla finestra1 si apre la finestra2

Nessun commento:

Posta un commento

Change Detection with structural similarity

L'idea di base e' quella di cercare le differenze tra le due immagini sottostanti Non e' immediatamente visibile ma ci sono dei ...