crossplatform.ru

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

> Создание только одного экземпляра окна
breeve
  опции профиля:
сообщение 27.1.2011, 16:49
Сообщение #1


Участник
**

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

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




Репутация:   1  


Как сделать чтобы окно можно было открыть только один раз.
Есть основное окно, и модальное диалоговое. У основного класса есть слот который создает диалоговое.
Если два раза нажать кнопку, будет два окна. Как перед созданием проверять есть ли уже такое окно, но только таким образом что если такого окна еще нет чтобы он не повис))?
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
 
Начать новую тему
Ответов
Rocky
  опции профиля:
сообщение 27.1.2011, 19:05
Сообщение #2


Старейший участник
****

Группа: Участник
Сообщений: 530
Регистрация: 22.12.2008
Из: Санкт-Петербург
Пользователь №: 463

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




Репутация:   7  


Что-то не понятно ничего.... Пора домой идти)

Это диалоговое окно - оно экзэмпляр одного класса? Вынести в мемберы главного класса указатель на него. В конструкторе главного класса присвоить NULL. Когда нужно показать это окно - если указатель не NULL, удалять и создавать заново. Если NULL - то просто создавать. Или нужно вообще не показывать контекстное меню если окно открыто? Как показываешь тогда это контекстное меню? Если ручками, то перед показом делать то что выше написал. Если через setContextMenu (или как она там называется), то видимо нужно ставить какой-нить eventFilter.... Как-то так....
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

Сообщений в этой теме
- breeve   Создание только одного экземпляра окна   27.1.2011, 16:49
- - abc   дык если оно модальное, оно не должно давать возмо...   27.1.2011, 16:59
|- - breeve   Цитата(abc @ 27.1.2011, 16:59) дык если о...   27.1.2011, 17:04
- - abc   а нельзя создать это диалоговое окно 1 раз в конст...   27.1.2011, 17:11
|- - breeve   Цитата(abc @ 27.1.2011, 17:11) а нельзя с...   27.1.2011, 17:20
- - abc   сделать глобальную переменную есть/нет окно, в кно...   27.1.2011, 17:27
- - Rocky   Что-то не понятно ничего.... Пора домой идти) Это...   27.1.2011, 19:05
- - Алексей1153   нужно не глобальную, а статическую переменную Буд...   27.1.2011, 20:52
- - Litkevich Yuriy   Цитата(breeve @ 27.1.2011, 19:04) Как вар...   27.1.2011, 21:17
- - Rocky   Litkevich Yuriy, а в чем отличие (может даже с точ...   27.1.2011, 21:55
- - DEADHUNT   Цитата(Rocky @ 27.1.2011, 21:55) Litkevic...   27.1.2011, 22:59
- - Алексей1153   Раскрывающийся текстдля справки //студийное опре...   28.1.2011, 7:39
- - Rocky   Раскрывающийся текстПо-поводу Цитата//студийное о...   28.1.2011, 8:36
- - Алексей1153   Цитата(Rocky @ 28.1.2011, 10:36) может та...   28.1.2011, 8:40
- - Litkevich Yuriy   Цитата(Rocky @ 27.1.2011, 23:55) Просто я...   28.1.2011, 21:14


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


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




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