crossplatform.ru

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


  Ответ в автоматический disconnect
Введите ваше имя
Подтвердите код

Введите в поле код из 6 символов, отображенных в виде изображения. Если вы не можете прочитать код с изображения, нажмите на изображение для генерации нового кода.
 

Опции сообщения
 Включить смайлы?
Иконки сообщения
(Опционально)
                                
                                
  [ Без иконки ]
 


Последние 10 сообщений [ в обратном порядке ]
kwisp Дата 20.8.2009, 10:25
 
Цитата(Litkevich Yuriy @ 20.8.2009, 11:17) *
еслиб был виртуальный, то вызывался бы слот объекта при соединении с ним. (в случае его существования)

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

надо посмотреть код Qt что там используется при вызове слота по соединению указатель на QObject или преобразованный указатель на верхний по иерархии класс содержащий Q_OBJECT. я думаю скорее всего 2. следовательно если и вызовется то вызовется переопределенный слот.
опять же тест все покажет. однако зачем и кому надо в этом разбираться?
Litkevich Yuriy Дата 20.8.2009, 10:17
 
Цитата(zss @ 20.8.2009, 13:59) *
очу создать слот с этим же именем.
плохая затея, лучше уникальное имя придумай.

Цитата(kwisp @ 20.8.2009, 14:15) *
при чем тут виртуальный слот или нет?
еслиб был виртуальный, то вызывался бы слот объекта при соединении с ним. (в случае его существования)
kwisp Дата 20.8.2009, 10:15
 
Цитата(zss @ 20.8.2009, 10:59) *
Он возможно используется для перерисовки.

не возможно а 100%

Цитата(zss @ 20.8.2009, 10:59) *
Но я у QDialog (наследника QWindow) хочу создать слот с этим же именем.


уважаемый вы что китайский коммунист? сами придумываете трудности и сами преодолеваете?
шутка.

вообще такое не рекомендуется.
при чем тут виртуальный слот или нет?
zss Дата 20.8.2009, 10:12
 
Цитата(Litkevich Yuriy @ 20.8.2009, 11:07) *
:scratch_one-s_head:

QWidget :)
Litkevich Yuriy Дата 20.8.2009, 10:07
 
Цитата(zss @ 20.8.2009, 13:59) *
QDialog (наследника QWindow)
:scratch_one-s_head:
zss Дата 20.8.2009, 9:59
 
Цитата(BRE @ 19.8.2009, 15:26) *
Произойдет.

спасибо. вроде получилось.
Только возник такой вопрос. У QWidget есть слот repaint. Он возможно используется для перерисовки.
Но я у QDialog (наследника QWindow) хочу создать слот с этим же именем.

Что произойдет если кто-то подпишется на этот слот. Будет вызван мой или QWidget - это же не виртуальный слот.
Есть подозрение, что будет обычное перекрытие метода. Нужно ли тогда предпринять какие действия, для вызова QWidget::repaint ?
BRE Дата 19.8.2009, 14:26
 
Цитата(zss @ 19.8.2009, 15:24) *
Безопасно ли просто закрыть окно (соответственно просто разрушить его). Произойдет ли автоматическое отключение от сигнала ?

Произойдет.
zss Дата 19.8.2009, 14:24
  у меня создается окно. его слот подписывается на сигнал и окно отображается. Это диалог.

Безопасно ли просто закрыть окно (соответственно просто разрушить его). Произойдет ли автоматическое отключение от сигнала ?

если нет, то как этого добиться ?
Просмотр темы полностью (откроется в новом окне)
RSS Текстовая версия Сейчас: 29.3.2024, 8:04