void MainWindow::login() { if (isSqlSetted) { int status; LoginDialog *loginDlg = new LoginDialog; loginDlg->setWindowIcon(QIcon(":/resources/icon/login.png")); status = loginDlg->exec(); //user = new Teacher(dbInfo); if (loginDlg->isStuChecked()) user = new Student(dbInfo); else if (loginDlg->isTeaChecked()) user = new Teacher(dbInfo); else if (loginDlg->isAdmChecked()) user = new Administrator(dbInfo); else { if (status == QDialog::Accepted) QMessageBox::warning(this, tr("ERROR"), tr("ERROR occurs while creating user object!")); return; } // user->login("T00000001", "123", dbInfo); // initInfo(); if (user->login(loginDlg->getLoginNumber(), loginDlg->getPassword(), dbInfo)) initInfo(); //初始化界面 delete loginDlg; } else { QMessageBox::warning(this, tr("SQL"), tr("SQL not Setted!")); getDBInfo(); } }