Russian Qt Forum

Qt => Вопросы новичков => Тема начата: lexflax от Февраль 01, 2014, 13:47



Название: как правильно прописать условие?
Отправлено: lexflax от Февраль 01, 2014, 13:47
Доброго времени суток.
Хочу при условии что если комбобокс активен то выполнялся опеределный код...
Код:
void Form6::on_pushButton_clicked()
{
    QSqlQuery query;
       query.prepare("DELETE from kod where kodsv = :kodsv");
       query.bindValue(":kodsv", ui->comboBox->currentText());
       query.exec();
       QSqlQuery query1;
       query1.prepare("DELETE from specvuza where kodsv = :kodsv");
       query1.bindValue(":kodsv",ui->comboBox->currentText());
               query1.exec();

       QSqlQuery queryd;
       queryd.prepare("select kodk from kvalif where namekvf = :namekvf");
       queryd.bindValue(":namekvf", ui->comboBox_6->currentText());
       if (!queryd.exec())
       {
           QMessageBox::warning(0, "Error", queryd.lastError().text());
           qDebug()<< "ERROR: " << queryd.lastError().text();
           return;
       }
       else
       {

           QString kodm;
           while (queryd.next())
           {
              kodm =queryd.value(0).toString();
           }
   QSqlQuery querys;
       querys.prepare("INSERT INTO  kod (kodsv,kodg,kodk) VALUES ( :kodsv,:kodg,:kodk)");
       querys.bindValue(":kodsv", ui->comboBox->currentText());
            querys.bindValue(":kodg", ui->comboBox_3->currentText());
       querys.bindValue(":kodk",kodm);
       querys.exec();

   }
if (ui->comboBox_7->setEnabled(true)){ Нужное мне условие

           QSqlQuery querym;
           querym.prepare("select kods from speciliz where namespiciliz = :namespiciliz");
           querym.bindValue(":namespiciliz", ui->comboBox_7->currentText());
           if (!querym.exec())
           {
               QMessageBox::warning(0, "Error", querym.lastError().text());
               qDebug()<< "ERROR: " << querym.lastError().text();
               return;
           }
           else
           {
               QString kods;
               while (querym.next())
               {
                  kods =querym.value(0).toString();
               }
               QSqlQuery qkos;

               qkos.prepare("INSERT INTO  specvuza (kodsv,kods) VALUES ( :kodsv,:kods)");
               qkos.bindValue(":kodsv", ui->comboBox->currentText());
                    qkos.bindValue(":kods",kods);
                       qkos.exec();}}
  this->close();
}
Выдает ошибку
Код:
D:\project qt new\untitled\untitled33\form6.cpp:-1: In member function 'void Form6::on_pushButton_clicked()':
Код:
D:\project qt new\untitled\untitled33\form6.cpp:110: ошибка: could not convert '((Form6*)this)->Form6::ui->Ui::Form6::<anonymous>.Ui_Form6::comboBox_7->QComboBox::<anonymous>.QWidget::setEnabled(1)' from 'void' to 'bool'
Что его не устраивает в условии?? И как можно поправить?


Название: Re: как правильно прописать условие?
Отправлено: kambala от Февраль 01, 2014, 14:17
if (ui->comboBox_7->isEnabled())

заглядывай иногда в документацию


Название: Re: как правильно прописать условие?
Отправлено: lit-uriy от Февраль 02, 2014, 19:56
>>setEnabled(true)
установитьРазрешённым(да) - утверждение.

Тут даже без документации всё очевидно.