Qt4: Auf Parent Variablen zugreifen

thekiller

Viceinator
Hallo,

ich möchte versuchen aus dem Konstruktor der Instanz "ConfigWindow" heraus auf die bool-Variable der Elternklasse zugreifen aber dies gelingt mir einfach nicht. Kann mir da jemand helfen?

MainWindow.h
C++:
#ifndef MAINWINDOW_H
#define MAINWINDOW_H

#include <QtGui/QMainWindow>

#include "configurationform.h"

// Konstantendefinitionen
#define	X 0
#define	Y 1

namespace Ui {
    class MainWindow;
}

class MainWindow : public QMainWindow {
	Q_OBJECT
	public:
		MainWindow(QWidget *parent = 0);
		~MainWindow();
		
		bool bEnabled;
		ConfigurationForm	*ConfigWindow;

	protected:
		void changeEvent(QEvent *e);
};

#endif // MAINWINDOW_H

configurationform.h
C++:
#ifndef CONFIGURATIONFORM_H
#define CONFIGURATIONFORM_H

#include <QtGui/QWidget>

namespace Ui {
    class ConfigurationForm;
}

class ConfigurationForm : public QWidget {
	Q_OBJECT
	public:
		ConfigurationForm(QWidget *parent = 0);
		~ConfigurationForm();

	protected:
		void	changeEvent(QEvent *e);

	private:
		Ui::ConfigurationForm *m_ui;
};

#endif // CONFIGURATIONFORM_H

configurationform.cpp
C++:
#include "configurationform.h"
#include "ui_configurationform.h"

ConfigurationForm::ConfigurationForm(QWidget *parent) : QWidget(parent), m_ui(new Ui::ConfigurationForm) {
	// HIER MÖCHTE ICH AUF "bEnable" DER ELTERNKLASSE ZUGREIFEN
	m_ui->setupUi(this);
}

ConfigurationForm::~ConfigurationForm() {
	delete m_ui;
}

void ConfigurationForm::changeEvent(QEvent *e) {
	QWidget::changeEvent(e);
	switch (e->type()) {
		case QEvent::LanguageChange:
			m_ui->retranslateUi(this);
			break;
		default:
			break;
	}
}

LG Manuel
 
Zuletzt bearbeitet von einem Moderator:
Hi.

Erstens deklariert man keine Attribute public. Man definiert getter und (evtl.) setter Methoden.

Dann mußt du einfach den Parameter des Konstruktors entsprechend deklarieren:
C++:
class ConfigurationForm : public QWidget {
    Q_OBJECT
    public:
        ConfigurationForm(MainWindow *parent = 0);
   ...
};
Gruß
 
Zurück