![]() |
Здравствуйте, гость ( Вход | Регистрация )
![]() ![]() |
![]() |
zss |
![]()
Сообщение
#1
|
Участник ![]() ![]() Группа: Участник Сообщений: 112 Регистрация: 9.6.2009 Пользователь №: 815 Спасибо сказали: 0 раз(а) Репутация: ![]() ![]() ![]() |
у меня создается окно. его слот подписывается на сигнал и окно отображается. Это диалог.
Безопасно ли просто закрыть окно (соответственно просто разрушить его). Произойдет ли автоматическое отключение от сигнала ? если нет, то как этого добиться ? |
|
|
BRE |
![]()
Сообщение
#2
|
![]() Профессионал ![]() ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 1112 Регистрация: 6.3.2009 Из: Ростов-на-Дону Пользователь №: 591 Спасибо сказали: 264 раз(а) Репутация: ![]() ![]() ![]() |
|
|
|
zss |
![]()
Сообщение
#3
|
Участник ![]() ![]() Группа: Участник Сообщений: 112 Регистрация: 9.6.2009 Пользователь №: 815 Спасибо сказали: 0 раз(а) Репутация: ![]() ![]() ![]() |
Произойдет. спасибо. вроде получилось. Только возник такой вопрос. У QWidget есть слот repaint. Он возможно используется для перерисовки. Но я у QDialog (наследника QWindow) хочу создать слот с этим же именем. Что произойдет если кто-то подпишется на этот слот. Будет вызван мой или QWidget - это же не виртуальный слот. Есть подозрение, что будет обычное перекрытие метода. Нужно ли тогда предпринять какие действия, для вызова QWidget::repaint ? |
|
|
Litkevich Yuriy |
![]()
Сообщение
#4
|
![]() разработчик РЭА ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: ![]() ![]() ![]() |
|
|
|
zss |
![]()
Сообщение
#5
|
Участник ![]() ![]() Группа: Участник Сообщений: 112 Регистрация: 9.6.2009 Пользователь №: 815 Спасибо сказали: 0 раз(а) Репутация: ![]() ![]() ![]() |
|
|
|
kwisp |
![]()
Сообщение
#6
|
![]() астарожна ынтжинэр ![]() ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 1404 Регистрация: 26.11.2008 Из: ТаганрогРодинаЧехова Пользователь №: 435 Спасибо сказали: 113 раз(а) Репутация: ![]() ![]() ![]() |
Он возможно используется для перерисовки. не возможно а 100% Но я у QDialog (наследника QWindow) хочу создать слот с этим же именем. уважаемый вы что китайский коммунист? сами придумываете трудности и сами преодолеваете? шутка. вообще такое не рекомендуется. при чем тут виртуальный слот или нет? |
|
|
Litkevich Yuriy |
![]()
Сообщение
#7
|
![]() разработчик РЭА ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: ![]() ![]() ![]() |
|
|
|
kwisp |
![]()
Сообщение
#8
|
![]() астарожна ынтжинэр ![]() ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 1404 Регистрация: 26.11.2008 Из: ТаганрогРодинаЧехова Пользователь №: 435 Спасибо сказали: 113 раз(а) Репутация: ![]() ![]() ![]() |
еслиб был виртуальный, то вызывался бы слот объекта при соединении с ним. (в случае его существования) ни че не понял. функции и методы можно переопределять и без виртуальных "примочек". вообще такие вопросы каверзные лучше проверять тестами что и как вызовется соберется ли без ошибок и предупреждений не будет ли ругаться moc при выполнение программы и прочее. надо посмотреть код Qt что там используется при вызове слота по соединению указатель на QObject или преобразованный указатель на верхний по иерархии класс содержащий Q_OBJECT. я думаю скорее всего 2. следовательно если и вызовется то вызовется переопределенный слот. опять же тест все покажет. однако зачем и кому надо в этом разбираться? |
|
|
![]() ![]() ![]() |
![]() |
Текстовая версия | Сейчас: 1.9.2024, 5:38 |