Seite 1 von 1

Problem mit Funktionsaufruf.

Verfasst: 26. Oktober 2006 14:07
von KingV1k
Hi,

mein Problem ist folgendes. Ich habe einmal die Datei "main.cpp" und "ui_untitled.h".

main.cpp

Code: Alles auswählen

.......
QApplication app(argc, argv);
	QMainWindow *window = new QMainWindow();
	Ui::MainWindow ui;
    ui.setupUi(window);
	window->show();
    return app.exec();
.......
......
.......
void Funktionen::testfunktion()
{
	for(int i=0; i<name_counter; i++)
	{
		//cout<<array[i][0]<<"      "<<array[i][1]<<endl;
	}
	ui.comboBox->addItem("test1");
	
}
Dabei kommt folgender Compiler-Fehler:
main.cpp:380: error: `ui' was not declared in this scope
main.cpp:380: warning: unused variable 'ui'

"Wieso das kommt" ist mir klar. Aber wie mach ich es richtig?

Verfasst: 26. Oktober 2006 16:03
von -Marco-
ui_untitled.h included?

Verfasst: 27. Oktober 2006 07:52
von KingV1k
ja klar ist ui_untitled.h included.
Mein Problem ist ja nur die Vererbung. Die Objekte um ui_untitled.h zu benutzen erstell ich ja in der main(), deswegen sind sie ja nur in der int main() gültig. ich will sie aber in der Funktion "testfunktion" benutzen. das ist mein problem.

Verfasst: 27. Oktober 2006 09:01
von -Marco-
KingV1k hat geschrieben:ja klar ist ui_untitled.h included.
Mein Problem ist ja nur die Vererbung. Die Objekte um ui_untitled.h zu benutzen erstell ich ja in der main(), deswegen sind sie ja nur in der int main() gültig. ich will sie aber in der Funktion "testfunktion" benutzen. das ist mein problem.
ups, hab ich wohl übersehen.
Du kannst das Objekt ui global machen (ist aber unschön), es statisch deklarieren (auch nicht die feine) oder aber es der angepassten Methode Funktionen::testfunktion(Ui::MainWindow* ptrUi) übergeben.

Normalerweise packt man aber ui als Member in die Fensterklasse und läßt nur von hier aus direkte Operationen zu. Kommuniziert wird dann per öffentlicher Methoden bzw. Signal & Slot mit dieser.

Verfasst: 27. Oktober 2006 09:38
von KingV1k
für meine zwecke musste ich es leider global deklarieren. alle anderen arten wären zu aufständig oder unschön.

Verfasst: 27. Oktober 2006 11:03
von Goos
KingV1k hat geschrieben:für meine zwecke musste ich es leider global deklarieren. alle anderen arten wären zu aufständig oder unschön.
Dann solltest entweder deine Ansichten, oder dein Applikationsdesign ueberdenken :)

Goos