crossplatform.ru

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

 
Ответить в данную темуНачать новую тему
> В чем существенная разница между show/hide и setVisible()?
RazrFalcon
  опции профиля:
сообщение 4.8.2011, 15:34
Сообщение #1


Zombie Mod
*****

Группа: Участник
Сообщений: 1654
Регистрация: 24.5.2010
Из: Харьков
Пользователь №: 1752

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




Репутация:   212  


Сабж. В хелпе написано что это одно и то же.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
ilyabvt
  опции профиля:
сообщение 4.8.2011, 16:58
Сообщение #2


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

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

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




Репутация:   3  


Это действительно так.
inline void show() { setVisible(true); }
inline void hide() { setVisible(false); }

Взято из файла QWidget.h, но это еще не все...)
inline void setHidden(bool hidden) { setVisible(!hidden); }
inline QT_MOC_COMPAT void setShown(bool shown) { setVisible(shown); }

Что делает макрос QT_MOC_COMPAT я правда не знаю.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
PAFOS
  опции профиля:
сообщение 5.8.2011, 8:24
Сообщение #3


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

Группа: Участник
Сообщений: 258
Регистрация: 27.12.2010
Из: Дмитров
Пользователь №: 2309

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




Репутация:   8  


Разница в удобстве использования.

Например, если тебе надо по активации/деактивации QAction() делать видимым/невидимым некий виджет, то удобнее соединить сингла triggered(bool) с слотом setVisible(bool).

В случае с show()/hide() надо писать более сложную обработку
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

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


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




RSS Текстовая версия Сейчас: 17.6.2024, 4:43