crossplatform.ru

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

3 страниц V  < 1 2 3  
Ответить в данную темуНачать новую тему
> Как запретить модальному диалогу растягиваться ?
kwisp
  опции профиля:
сообщение 28.2.2009, 13:39
Сообщение #21


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

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

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




Репутация:   23  


1. можно вынести в отдельную функцию которая будет вызываться по закрытию диалога. можно слот на finished(int) повесить..
2. не понял вопроса извини.

....
connect(dialog,SIGNAL(finished(int)),this,SLOT(dFinished(int)));
dialog->setModal(true);
dialog->show();
dialog->setFixedHeight();
}// выход в основной цикл обработки событий....
//далее обработка результата в слоте dFinished(int)

да вариантов куча. я не пойму зачем именно тебе отдельнгый поток с диалогом? хоть убей не пойму...

Сообщение отредактировал kwisp - 28.2.2009, 13:39
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
flankerr
  опции профиля:
сообщение 28.2.2009, 13:52
Сообщение #22


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

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

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




Репутация:   0  


kwisp
Кажется теперь я не много погоричился... setModel делает диалог модальным внтури потока который создал диалог
Однако решение с добавлением ещё одной функции и завязки на события мне кажется более сложным и "не красивым" чем моё и чем даже твой вариант с циклом.

Внутри диалога может выполняться "тяжёлый код" который будет слишком тормозить очередь события потока вызвавшего диалог. Поэтому бывает полезным диалог запускать в отдельном потоке.Ну это не к данном случаю а вообще. В данном случае мне без разницы. Для меня важно получить отвте от пользователя и только потом продолжить выполнение.

Сообщение отредактировал flankerr - 28.2.2009, 13:56
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
kwisp
  опции профиля:
сообщение 28.2.2009, 13:54
Сообщение #23


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

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

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




Репутация:   23  


Цитата(flankerr @ 28.2.2009, 13:52) *
Кажется теперь я не много погоричился... setModel делает диалог модальным внтури потока который создал диалог

ура!!!!!!!!!
ты уверен???
проверь еще раз пожалуйста???
может все таки нет???

;)
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
flankerr
  опции профиля:
сообщение 28.2.2009, 14:00
Сообщение #24


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

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

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




Репутация:   0  


kwisp, да на счёт setModal попутал.
но всё равно городиьт огород с событиями и отдельной функцией в данном случае лишние

Сообщение отредактировал flankerr - 28.2.2009, 14:03
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
kwisp
  опции профиля:
сообщение 28.2.2009, 14:09
Сообщение #25


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

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

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




Репутация:   23  


flankerr,
честно говоря я бы уже переопределил диалог и его showEvent() и не мучался бы ....

если бы был сигнал о появлении окна на переднем плане можно было бы отследить его(появление) и повесить на слот владельца диалога в котором написать setFixedHeight()....
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
flankerr
  опции профиля:
сообщение 28.2.2009, 14:16
Сообщение #26


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

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

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




Репутация:   0  


kwisp, так я сразу сделал как написал с открытием\закрытием меня это устраивает но на будущие интересно найти решение, если оно вообще есть.
Хотя дл маленьикх диалогов сойдёт моё решение а для больших как правило всё ранво создаёться класс-наследник и там уже всё просто.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Litkevich Yuriy
  опции профиля:
сообщение 28.2.2009, 14:22
Сообщение #27


разработчик РЭА
*******

Группа: Сомодератор
Сообщений: 9669
Регистрация: 9.1.2008
Из: Тюмень
Пользователь №: 64

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




Репутация:   94  


Давайте модальность QDialog в отдельной теме обсуждать.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
kwisp
  опции профиля:
сообщение 28.2.2009, 14:22
Сообщение #28


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

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

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




Репутация:   23  


Litkevich Yuriy,
с позднячком:). обсудили уже, просто разделить надо.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Litkevich Yuriy
  опции профиля:
сообщение 28.2.2009, 14:34
Сообщение #29


разработчик РЭА
*******

Группа: Сомодератор
Сообщений: 9669
Регистрация: 9.1.2008
Из: Тюмень
Пользователь №: 64

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




Репутация:   94  


Цитата(kwisp @ 28.2.2009, 17:22) *
просто разделить надо.
просто нечем, пост начасти поделить нельзя (инструмента такого нет). А пользователей плохая привычка все в кучу смешать.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
kwisp
  опции профиля:
сообщение 28.2.2009, 14:36
Сообщение #30


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

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

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




Репутация:   23  


Цитата
А пользователей плохая привычка все в кучу смешать.

Litkevich Yuriy,
простите уважаемый...
а название темы можно сменить??? или изменить
"Как запретить модальному диалогу растягиваться ?"

Сообщение отредактировал kwisp - 28.2.2009, 14:37
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

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


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




RSS Текстовая версия Сейчас: 30.12.2024, 20:08