crossplatform.ru

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

> Передача указателя на QTimer в качестве параметра в функцию
Гость_oneassasin_*
сообщение 13.4.2011, 17:40
Сообщение #1





Гости








    


Здравствуйте. На следующий код:
void DigitalClock::startTimer()
{
    QTimer *timer = new QTimer(this);
    connect(timer, SIGNAL(timeout()), this, SLOT(showMessage(QTimer *timer)));
    timer->start(60000););
}

мне Qt Creator подчеркнул желтой линией и написал "argument should be anonymous".
Что такое и как это можно исправить?
p.s.
SLOT(showMessage(QTimer *timer))

Подобное вообще возможно?
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
 
Начать новую тему
Ответов
Гость_oneassasin_*
сообщение 13.4.2011, 19:01
Сообщение #2





Гости








    


Цитата(quarz @ 13.4.2011, 18:20) *
В SIGNAL() и SLOT() обычно не указывают имена аргументов, только их типы. Возможно Creator хотел сказать именно это.
Попробуй так:
connect(timer, SIGNAL(timeout()), this, SLOT(showMessage(QTimer*)));

Да, действительно. Спасибо. :)
Теперь следующая лажа.
QObject::connect: Incompatible sender/receiver arguments
        QTimer::timeout() --> DigitalClock::showMessage(QTimer*)

При компиляции и последующем запуске программы мне такое выдаёт, и никакого действия по событию timeout() у таймера не происходит.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

Сообщений в этой теме


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


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




RSS Текстовая версия Сейчас: 22.12.2024, 22:38