Создание только одного экземпляра окна |
Здравствуйте, гость ( Вход | Регистрация )
Создание только одного экземпляра окна |
DEADHUNT |
27.1.2011, 22:59
Сообщение
#11
|
Активный участник Группа: Участник Сообщений: 430 Регистрация: 15.4.2009 Пользователь №: 686 Спасибо сказали: 26 раз(а) Репутация: 2 |
Litkevich Yuriy, а в чем отличие (может даже с точки зрения безопастности)
от
это называется Qt головного мозга, когда C/C++ RTL/STL - зло, Qt - самое то. NULL определяется в стандартных заголовках C, а в Qt всё переписывают/создают аналоги и наверное может получиться так что макрос NULL будет не объявлен(если язаешь только Qt заголовки) в C++1x для этого есть nullptr Сообщение отредактировал DEADHUNT - 27.1.2011, 23:01 |
|
|
Алексей1153 |
28.1.2011, 7:39
Сообщение
#12
|
фрилансер Группа: Участник Сообщений: 2941 Регистрация: 19.6.2010 Из: Обливион Пользователь №: 1822 Спасибо сказали: 215 раз(а) Репутация: 34 |
Раскрывающийся текст для справки
а лично мне предпочитается 0 . Его писать проще однако, отклонились от темы Как сделать чтобы окно можно было открыть только один раз. Есть основное окно, и модальное диалоговое. У основного класса есть слот который создает диалоговое. Если два раза нажать кнопку, будет два окна. Как перед созданием проверять есть ли уже такое окно, но только таким образом что если такого окна еще нет чтобы он не повис))? если вне некой функции окно не используется (модальное ж всё-таки), то лучше просто инкапсулировать объект в теле функции:
для немодального:
однако, следует помнить, что static переменная будет единая для ВСЕХ экземпляров класса QMyClass Сообщение отредактировал Алексей1153 - 28.1.2011, 8:35 |
|
|
Rocky |
28.1.2011, 8:36
Сообщение
#13
|
Старейший участник Группа: Участник Сообщений: 530 Регистрация: 22.12.2008 Из: Санкт-Петербург Пользователь №: 463 Спасибо сказали: 22 раз(а) Репутация: 7 |
Раскрывающийся текст По-поводу Цитата //студийное определение #ifndef NULL #ifdef __cplusplus #define NULL 0 Это я знаю ессно, просто тут видимо соглашусь с DEADHUNT. Штука не в том, что проще 0 писать.. Опасность даже не в том что NULL может быть не объявлен, а вот возьмут и сделают #define NULL 1 - и все, программа поплыла ))) Макросы зло) По-поводу темы. Алексей1153, может так лучше?
ведь иначе после закрытия окна его отобразить 2-й раз уже не удастся. Сообщение отредактировал Rocky - 28.1.2011, 8:36 |
|
|
Алексей1153 |
28.1.2011, 8:40
Сообщение
#14
|
фрилансер Группа: Участник Сообщений: 2941 Регистрация: 19.6.2010 Из: Обливион Пользователь №: 1822 Спасибо сказали: 215 раз(а) Репутация: 34 |
|
|
|
Litkevich Yuriy |
28.1.2011, 21:14
Сообщение
#15
|
разработчик РЭА Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: 94 |
|
|
|
Текстовая версия | Сейчас: 2.12.2024, 7:40 |