crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )

> Вывод QMessageBox до определенного события, Событие - выбор верного файла в диалоге getOpenFileName.
Andrewshkovskii
  опции профиля:
сообщение 10.3.2009, 21:58
Сообщение #1


Активный участник
***

Группа: Участник
Сообщений: 351
Регистрация: 27.12.2008
Пользователь №: 467

Спасибо сказали: 18 раз(а)




Репутация:   1  


есть сообщение с варнингом , вот такое :
        dbReadErrorAbortButton->setText("Отмена");
        dbReadErrorOpenDialogButton->setText("Обзор..");
        dbReadError->setText("Произошла ошибка при чтении базы данных цветов. Файл базы не найден.");
        dbReadError->setInformativeText("Укажите путь к файлу,в противном случае нажмите \"Отмена\".");
        dbReadError->setIcon(QMessageBox::Critical);
        dbReadError->setWindowTitle("Ошибка открытия файла");
        dbReadError->addButton(dbReadErrorOpenDialogButton,QMessageBox::AcceptRole);
        dbReadError->addButton(dbReadErrorAbortButton,QMessageBox::DestructiveRole);


Как видно, 2 кнопочки : Отмена и Обзор...

при нажатии Обзор, открывает getOpenFileName :
void Test1Widget::openDBFile(){//это слот, вызывает по нажатию кнопочки "Обзор.."

   *dbPath=QFileDialog::getOpenFileName(this,"Выберите базу данных цветов","/home","Текстовые документы (*.txt)");
//   if(dbPath->isEmpty())

}



Теперь вопрос : как реализовать такой интерфейс, при котором данное QMessageBox будет выводиться до тех пор, пока не будет выбран существующий файл(т.е !dbPath->isEmpty()).
У меня пока что одно решение -
if(dbPath->isEmpty())
  //тут вызвать слот openDBFile()

Но это выглядит костылем..подскажите более верное/правильное/рациональное решение..:)
Т.е - если пользователя в окне выбора файла нажимает отмена, QMessageBox не изчезало.

Сообщение отредактировал Andrewshkovskii - 10.3.2009, 22:22
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
 
Начать новую тему
Ответов
kwisp
  опции профиля:
сообщение 10.3.2009, 22:36
Сообщение #2


астарожна ынтжинэр
*****

Группа: Участник
Сообщений: 1404
Регистрация: 26.11.2008
Из: ТаганрогРодинаЧехова
Пользователь №: 435

Спасибо сказали: 113 раз(а)




Репутация:   23  


Цитата(Andrewshkovskii @ 10.3.2009, 21:58) *
Т.е - если пользователя в окне выбора файла нажимает отмена, QMessageBox не изчезало.

зачем отмена вообще тогда нужна?
может без неё лучше?
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

Сообщений в этой теме


Быстрый ответОтветить в данную темуНачать новую тему
Теги
Нет тегов для показа


2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0




RSS Текстовая версия Сейчас: 2.12.2024, 2:12