crossplatform.ru

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


  Ответ в Передача слота в качестве параметра функции
Введите ваше имя
Подтвердите код

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

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


Последние 10 сообщений [ в обратном порядке ]
Xnt Дата 12.12.2007, 15:20
  Спасибо, работает.
ViGOur Дата 12.12.2007, 12:31
  Может попробовать так?
void SlotConnect(const char *pSlot) 
{    
   connect( this, SIGNAL( OpenDb), this, pSlot);
}


Вызов:
SlotConnect( SLOT(pFunc));
Xnt Дата 12.12.2007, 12:03
  Возникла необходимость передавать слот в качестве параметра функции, чтобы в ней его соединить с нужным сигналом. Я делаю так:
class X: public QObject
{
    Q_OBJECT
private slots:
...
    void SlotFunc(){}
...
public:
...
    A(){ SlotConnect( &X::SlotFunc); }
    void SlotConnect( void (X::*pFunc)()){ connect( this, SIGNAL( OpenDb), this, SLOT(pFunc)); }
...
};

Все компилиться, но почему-то не работает. :(
Просмотр темы полностью (откроется в новом окне)
RSS Текстовая версия Сейчас: 29.3.2024, 12:08