mi sento un idiota
ho capito come scrivere la mia classe per il Widget, come avviarla da main(), come creare gli oggetti da nome_classe::nome_classe(...) etc...
metto un Command, creo e implemento il Signal clicked() riferito ad uno slot chiamato slotA() - correttamente impostato. Ora voglio creare una QTextEdit al click... mi viene in mente di mettere il codice dentro lo slotA: ovviamente non funziona: non mi crea nulla... o meglio, crea l'allocazione di memoria ma non mi visualizza la text.
Questo è il codice (la classe si chiama Prova, i file prova.cpp e prova.h)
Prova.cpp:
codice:
#include "prova.h"
#include <qtextedit.h>
#include <qpushbutton.h>
#include <qvariant.h>
Prova::Prova(QWidget *parent, const char *name) : QWidget(parent, name)
{
txt = new QTextEdit(this, "txt");
txt->setGeometry(QRect(70,90,131,68));
cmd = new QPushButton(this, "cmd");
cmd->setGeometry(QRect(130,270,111,21));
connect(cmd, SIGNAL(clicked()), this, SLOT(slotA()));
}
Prova::~Prova()
{
}
void Prova::slotA()
{
txtb = new QTextEdit(this, "txt");
txtb->setGeometry(QRect(100,100,200,200));
}
(in prova.h è tutto a posto)
Dov'è l'errore? come faccio a far apparire il QTextEdit?
Grazie e ciao