Я пытаюсь получить информацию о нескольких переменных-членах класса на принимающей стороне настройки слота/сигнала, поэтому я хотел бы передать весь класс. К сожалению, после передачи класса переменные-члены кажутся пустыми. Вот несколько фрагментов кода:
Это устанавливает сигнал для прохождения класса
signals:
void selected(const ControlIcon *controlIcon);
это соединение слота/сигнала
connect(controllerList->serialController, SIGNAL(selected(const ControlIcon*)),
infoView, SLOT(serialControllerSelected(const ControlIcon*)));
Я испускаю сигнал из класса, который нужно передать
emit selected(this);
Вот код для вызова данных члена класса
QLabel *ASCIIStringHolder = new QLabel;
ASCIIStringHolder->setText(controlIcon->m_ASCIIString);
В метке ничего не отображается, и когда я устанавливаю точку останова, я вижу, что внутри m_ASCIIString
ничего нет.
Я посмотрел, чтобы убедиться, что ему изначально был назначен какой-то текст, и это не проблема. Я также пробовал настройку сигнала/слота с const
и без него.
Любая помощь будет оценена по достоинству.
serialControllerSelected()
? Здесь есть что-то странное;serialController
этоControlIcon*
? - person maxelost   schedule 26.01.2011