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
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
 
Начать новую тему
Ответов
Andrewshkovskii
  опции профиля:
сообщение 12.3.2009, 20:50
Сообщение #2


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

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

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




Репутация:   1  


так будет постоянно висеть диалог выбора файла, и никуда от него тогда не денишься, т.е., что бы программу завершить - ctrl+alt+del.

Сообщение отредактировал Andrewshkovskii - 12.3.2009, 20:51
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

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


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


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




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