Для чего создавать два объекта MainWindow?
и при этом показывать (show()) только один из них
MainWindow(QWidget *parent);
MainWindow(QString db_l, QString db_n);
MainWindow::MainWindow(QWidget *parent) :
QMainWindow(parent),
ui(new Ui::MainWindow)
{
ui->setupUi(this);
}
MainWindow::MainWindow(QString db_l, QString db_n)
{
db_login = db_l;
db_name = db_n;
}
MainWindow::MainWindow(QString db_l, QString db_n, QWidget *parent ) :
QMainWindow(parent),
ui(new Ui::MainWindow),
db_login( db_l ),
db_name( db_n )
{
ui->setupUi(this);
}
class MainWindow : public QMainWindow
{
Q_OBJECT
public:
MainWindow::MainWindow( QString db_l, QString db_n, QWidget *parent = 0 );
};
mainwindow.h:23: warning: 'MainWindow::ui' will be initialized after
на строку Ui::MainWindow *ui;mainwindow.h:14: warning: 'QString MainWindow::db_login'
на строку QString db_login;mainwindow.cpp:5: warning: when initialized here
строка MainWindow::MainWindow(QString db_l, QString db_n, QWidget *parent ) .....
class DialogLogin : public QDialog, public Ui::DialogLogin
{
Q_OBJECT
public:
DialogLogin(QWidget* parent= 0);
QString login() const;
QString password() const;
};
Вот так используется в главном окне:DialogLogin loginDialog(this);
if (loginDialog.exec() == QDialog::Accepted)
{
login=loginDialog.login();
pswd=loginDialog.password();
}
#ifndef NEWDOG_H
#define NEWDOG_H
#include <QDialog>
namespace Ui {
class newdog;
}
class newdog : public QDialog
{
Q_OBJECT
public:
explicit newdog(QWidget *parent = 0);
~newdog();
QString aname() const;
private:
Ui::newdog *ui;
private slots:
void on_buttonBox_accepted();
};
#endif // NEWDOG_H
#include "newdog.h"
#include "ui_newdog.h"
#include "mainwindow.h"
#include "ui_mainwindow.h"
newdog::newdog(QWidget *parent) :
QDialog(parent),
ui(new Ui::newdog)
{
ui->setupUi(this);
}
newdog::~newdog()
{
delete ui;
}
void newdog::on_buttonBox_accepted()
{
}
#include "mainwindow.h"
#include "ui_mainwindow.h"
#include "newdog.h"
#include "QDialog"
MainWindow::MainWindow(QWidget *parent) :
QMainWindow(parent),
ui(new Ui::MainWindow)
{
ui->setupUi(this);
}
MainWindow::~MainWindow()
{
delete ui;
}
void MainWindow::on_pushButton_2_clicked()
{
QString name;
newdog form(this);
if (form.exec() == QDialog::Accepted)
{
name=form.aname();
}
ui->label->setText(name);
}
void MainWindow::on_pushButton_2_clicked(bool checked)
{
}