#include "auth.h" auth::auth (QWidget *parent) : QWidget{ parent }, _nicknameLabel (new QLabel ("nickname:")), _nicknameEdit (new QLineEdit ()), _passwordLabel (new QLabel ("passwprd:")), _passwordEdit (new QLineEdit ()), _addressLabel (new QLabel ("address:")), _addressEdit (new QLineEdit ()), _portLabel (new QLabel ("port:")), _portEdit (new QLineEdit ()), _okButton (new QPushButton ("&OK")), _quitButton (new QPushButton ("&QUIT")), _vbox (new QVBoxLayout (parent)) { _nicknameLabel->setAlignment (Qt::AlignHCenter); _passwordLabel->setAlignment (Qt::AlignHCenter); _addressLabel->setAlignment (Qt::AlignHCenter); _portLabel->setAlignment (Qt::AlignHCenter); _passwordEdit->setEchoMode (QLineEdit::Password); _vbox->addWidget (_nicknameLabel); _vbox->addWidget (_nicknameEdit); _vbox->addWidget (_passwordLabel); _vbox->addWidget (_passwordEdit); _vbox->addWidget (_addressLabel); _vbox->addWidget (_addressEdit); _vbox->addWidget (_portLabel); _vbox->addWidget (_portEdit); _vbox->addWidget (_okButton); _vbox->addWidget (_quitButton); connect (_okButton, &QPushButton::clicked, this, &auth::onAuth); connect (_quitButton, &QPushButton::clicked, this, &auth::close); setLayout (_vbox); } void auth::onAuth () { QSqlDatabase *db = new QSqlDatabase(QSqlDatabase::addDatabase("QPSQL")); db->setHostName(_addressEdit->text()); db->setPort(_portEdit->text().toInt()); db->setDatabaseName("cards"); db->setUserName(_nicknameEdit->text()); db->setPassword(_passwordEdit->text()); bool ok = db->open(); if (ok) { emit dbOpenned(db); } close(); }