Seite 1 von 1

registerField richtig anwenden

Verfasst: 19. April 2010 15:09
von universe
Hallo,

ich habe mal wieder ein Problem mit QWizardPage.
Ich möchte die Methode registerField benutzen und zwar in folgendem Programm:

-------------------------
Klasse1:
Klasse2 *wizard = new Klasse2;
wizard->addPage(wizard->createIntroPage());
wizard->show();

Klasse2:
QWizardPage *Klasse2::createIntroPage(){

QWizardPage *page = new QWizardPage;
QWidget *layoutWidget = new QWidget;
layoutWidget->setParent(page);

for(int i = 0; i < 3; i++){
QCheckBox *check = new QCheckBox(layoutWidget);
check->setGeometry(0,i*10,100,15);
page->registerPage("0", check);
}

layoutWidget->show();

return page;
}
------------------------

Wenn ich das ausführen möchte, bekomme ich folgende Meldung:
void QWizardPage::registerField(const QString&, QWidget*, const char*, const char*) is protected

Hat jemand ne Ahnung, was ich falsche mache?

Verfasst: 19. April 2010 16:20
von archer
Das sagt doch schon die Meldung

Code: Alles auswählen

... is protected 
Du kannst auf die Methode nicht zugreifen, da sie nicht public ist.
Das sind C++ Grundlagen.

Verfasst: 19. April 2010 16:23
von franzf
Ordentlich C++ lernen und Doku lesen...
protected kannst du nicht so einfach aufrufen. Da kommst du nur ran, wenn

*) Du friend von der Klasse bist
*) Von der Klasse selber aus
*) Du von der Klasse abgeleitet hast.

Rate (besser "weiß"), was die einzige Möglichkeit ist, die dir bleibt.