Здравстуйте!
Завтра здавать лабу (крайний срок), а она еще не готова:
Надо в Конструкторе моего виджета, приконнектить клик некой кнопки к Слоту, определенному в этом же классе (виджете), короче, вот код:
class ShennonWidget : public QWidget
{
private:
QPushButton *make32;
QPushButton *make1024;
QPushButton *expand;
QPushButton *collapse;
void deleteTreeItems(QTreeWidgetItem *item);
public:
ShennonWidget(QWidget *parent);
~ShennonWidget();
void initConnections(ShennonWidget *reciver);
public slots:
void makeTree32(float *probability, char *code);
QTreeWidget *makeTree1024();
int countValues();
void expandAll(QTreeWidgetItem *item);
void collapseAll(QTreeWidgetItem *item);
QTreeWidgetItem *start;
QTreeWidget *tree;
}; //Мой виджет.
...
ShennonWidget::ShennonWidget(QWidget *parent)
: QWidget(parent)
{
...
expand = new QPushButton("Expand Tree", this);
collapse = new QPushButton("Collapse Tree", this);
...
connect(expand, SIGNAL(clicked()), reciver, SLOT(expandAll(start)));
connect(collapse, SIGNAL(clicked()), reciver, SLOT(collapseAll(start)));
...
} //Конструктор.
...
При исполнении программа выплевывает в консоль следующее:
Object::connect: No such slot QWidget::expandAll(start)
Object::connect: No such slot QWidget::collapseAll(start)
Кнопки соответсятенно не пашут.
Чего она ищет слоты в QWidget, а не в новом ShennonWidget?
Спасибо, буду ОЧЕНЬ благодарен за скорую помощь :) !
Форум —
Development

