crossplatform.ru

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


  Ответ в QMessageBox, не закрывается
Введите ваше имя
Подтвердите код

Введите в поле код из 6 символов, отображенных в виде изображения. Если вы не можете прочитать код с изображения, нажмите на изображение для генерации нового кода.
 

Опции сообщения
 Включить смайлы?
Иконки сообщения
(Опционально)
                                
                                
  [ Без иконки ]
 


Последние 10 сообщений [ в обратном порядке ]
panter_dsd Дата 23.3.2010, 12:37
  ))) Сам подумай. editingFinished эмитится, в это время срабатывает мессага и эдит теряет фокус, опять эмит и так до бесконечности.
igorenja Дата 23.3.2010, 9:50
 
Цитата(Litkevich Yuriy @ 22.3.2010, 20:47) *
Этот диалог случаем не в конструкторе какого-то класса создаётся?

П.С. Если простейший тест, в функции main, работает корректно. То нужно написать тест, повотряющий иерархию объектов.


В main запускается, более того я обнаружил что если подключить слот BtnTestClicked() к lineEdit1 вот так:
    connect(lineEdit1,SIGNAL(editingFinished()),this,SLOT(BtnTestClicked()));
то косяк есть, а если вот так
    connect(lineEdit1,SIGNAL(textChanged(QString)),this,SLOT(BtnTestClicked()));
то кояка нет.

пример прицепил...
Litkevich Yuriy Дата 22.3.2010, 17:47
 
Цитата(igorenja @ 22.3.2010, 16:32) *
в наследнике наследника QWidget
Этот диалог случаем не в конструкторе какого-то класса создаётся?

П.С. Если простейший тест, в функции main, работает корректно. То нужно написать тест, повотряющий иерархию объектов.
igorenja Дата 22.3.2010, 13:32
 
Цитата(Litkevich Yuriy @ 22.3.2010, 16:12) *
igorenja, ты его откуда вызываешь, где создаёшь? В наследнике QWidget?

в наследнике наследника QWidget
Litkevich Yuriy Дата 22.3.2010, 13:12
  igorenja, ты его откуда вызываешь, где создаёшь? В наследнике QWidget?
igorenja Дата 22.3.2010, 13:08
 
Цитата(Litkevich Yuriy @ 22.3.2010, 14:50) *
нужен минимальный тестовый пример, который воспроизводит эту проблему.


Шутка в том что написанный тестовый пример работает как хочется.... Буду разбираться сам... Еси не получится напишу
Litkevich Yuriy Дата 22.3.2010, 11:50
 
Цитата(igorenja @ 22.3.2010, 14:25) *
что бы новую тему не открывать напишу тут:
это всмысле лень?

Цитата(igorenja @ 22.3.2010, 14:25) *
то вообще никак не закрыть его...
нужен минимальный тестовый пример, который воспроизводит эту проблему.
igorenja Дата 22.3.2010, 11:25
  Доброе время суток!
У меня похожая проблема, что бы новую тему не открывать напишу тут:
CODE

QMessageBox *mess = new QMessageBox(0);
mess->setText("tdfghldjkfhgklsh");
mess->setIcon(QMessageBox::Critical);
mess->exec();
delete mess;


В приведённом выше примере диалоговое окошечко вызывается 2 реза, если так:
CODE

QMessageBox *mess = new QMessageBox(this);
mess->setText("tdfghldjkfhgklsh");
mess->setIcon(QMessageBox::Critical);
mess->exec();
delete mess;


то вообще никак не закрыть его...

В чём может быть дело?
Просмотр темы полностью (откроется в новом окне)
RSS Текстовая версия Сейчас: 29.3.2024, 3:58