[gelöst] Widget in MainWindow einbinden

Alles rund um die Programmierung mit Qt
Antworten
nici
Beiträge: 246
Registriert: 29. Oktober 2008 12:50

[gelöst] Widget in MainWindow einbinden

Beitrag von nici »

hallo,

ich habe ein MainWindow mit drei Tabs. Für die drei Tabs habe ich 3 Widgest angefertigt. Wie bekomme ich es hin, dass ein Widget in ein Tab im MainWindow eingebunden wird? In meinem Buch steht da leider nichts zu. Danke euch schon mal für eure Mühe.

lg

nici
Zuletzt geändert von nici am 28. November 2008 14:24, insgesamt 1-mal geändert.
Hmm mir fällt nichts ein ^^
nici
Beiträge: 246
Registriert: 29. Oktober 2008 12:50

Beitrag von nici »

ähm geht das übrhaupt???

lg

nici
Hmm mir fällt nichts ein ^^
macman
Beiträge: 1738
Registriert: 15. Juni 2005 13:33
Wohnort: Gütersloh
Kontaktdaten:

Beitrag von macman »

Man nehme ein QTabWidget. Oder habe ich was falsch verstanden?
Die deutsche Schriftsprache ist case-sensitive. Außerdem gibt es eine Interpunktionsnorm. Wenn manch einer seine Programme genauso schlampig schreibt, wie sein Posting hier, dann sollte er es lieber bleiben lassen.
nici
Beiträge: 246
Registriert: 29. Oktober 2008 12:50

Beitrag von nici »

hi,

ja das hab ich ja auch gemacht. Jetzt hab ich ja die Tabs und möchte ein Widget einbinden. Also ein getrennt bearbeitetes Widget, zB. dass der Inhalt in Tab1 sein soll.
Ich hab ja ein Mainwindow mit QTabWidget ( 3 Tabs). Jetzt hab ich noch mal 3 Widgets. Je ein Widget soll dann in einen Tab. Oder darf ich das so nicht machen und muss gleich die Tabs bearbeiten??

lg

nici
Hmm mir fällt nichts ein ^^
pfid
Beiträge: 535
Registriert: 22. Februar 2008 16:59

Beitrag von pfid »

Code: Alles auswählen

QWidget *w1, *w2, *w3;
QTabWidget* tab;

...


tab->addTab(w1, "Tab1");
tab->addTab(w2, "Tab2");
tab->addTab(w3, "Tab3");
RHBaum
Beiträge: 1436
Registriert: 17. Juni 2005 09:58

Beitrag von RHBaum »

2 Möglichkeiten ...

1. du fuegst die dinger im designer ein ...
dazu nimmst du irgend ein widget als platzhalter, baust dein layout fuer das tabwidget etc. Dann tasuchst das platzhalter-widget gegen deine eigene klasse ...
Im ContectMenu fuer ein widget im deutschspracheigen QTDesigner heisst der Punkt : "Als Platthalter für benutzerdefinierte klasse festlegen".
Im englichen hiess der immer "promote as custom widget"

2. du befuellst dein Tabwidget per hand ... siehe doku von QTabWidget !

Ciao ....
MichaelS
Beiträge: 240
Registriert: 27. Dezember 2005 12:49

Beitrag von MichaelS »

Wenn Du das ganze nicht mit dem Designer erstellen willst, erstellst Du zunächst das TabWidget und fügst dann mit der Methode addTab die einzelnen Seiten ein. Dabei übergibst Du als Parameter einen Pointer auf das entsprechende Widget.

Siehe auch http://doc.trolltech.com/4.4/qtabwidget.html. Da findest Du auch Beispielcode, der das gut veranschaulicht.

Gruß Michael
nici
Beiträge: 246
Registriert: 29. Oktober 2008 12:50

Beitrag von nici »

ähm, entweder hab ich euch missverstanden oder ihr habt mich missverstanden ^^.

Also im designer habe ich ein Mainwindow erstellt mit QTabWidget (insgesamt 3 Tabs). Dann habe ich im designer noch 3 Widgets definiert.

So, also Code habe ich
- TabEins.cpp + TabEins.h -> dieses Widget (TabEins.ui) soll der Inhalt
des ersten Tabs in MainWindow.ui sein

- TabZwei.cpp + TabZwei.h -> dieses Widget (TabEins.ui) soll der Inhalt
des zweiten Tabs in MainWindow.ui sein
- TabDrei.cpp + TabDrei.h -> dieses Widget (TabEins.ui) soll der Inhalt
des dritten Tabs in MainWindow.ui sein
- main.cpp

Wie bekomme ich die Widgets als Tab eingebunden/eingefügt??

lg

nici

(wie lade ich in diesem Forum eine Datei hoch???)
Hmm mir fällt nichts ein ^^
pfid
Beiträge: 535
Registriert: 22. Februar 2008 16:59

Beitrag von pfid »

Ist doch viel zu umständlich, jedes Tab als einzelne Datei im Designer anzulegen. Bearbeite doch das ganze Hauptfenster inkl. der 3 Tabs in einer Datei im Designer.
nici
Beiträge: 246
Registriert: 29. Oktober 2008 12:50

Beitrag von nici »

So hab mal den Code geladen, vlt hilft es mich zu verstehen.
dankkkeee.

lg

nici
Dateianhänge
TabDrei.cpp.txt
TabDrei.h mit dabei
(853 Bytes) 159-mal heruntergeladen
TabEins.cpp.txt
TabEins.h mit dabei
(2.57 KiB) 152-mal heruntergeladen
TabZwei.cpp.txt
TabZwei.h mit dabei
(2.26 KiB) 215-mal heruntergeladen
Hmm mir fällt nichts ein ^^
nici
Beiträge: 246
Registriert: 29. Oktober 2008 12:50

Beitrag von nici »

hmm wenn ich es so wie pfid sagt mache, wie sieht das dann aus.
Hab ich dann nur noch drei Klassen, eine main.cpp, MainWindow.cpp
und MainWindow.h??
Wie greif ich dann über die MainWindow.cpp auf die Tabs zu? Und wie definiere ich die QDoubleSpinBoxes z.B. ???

lg

nici
Hmm mir fällt nichts ein ^^
nici
Beiträge: 246
Registriert: 29. Oktober 2008 12:50

Beitrag von nici »

so ich hab das jetzt so gemacht, dass ich direkt die Tabs im Designer bearbeitet hab.
Wie spreche ich denn jetzt die einzelnen Tabs an? z.B. wenn ich die Werte die in TabZwei eingegeben werden, TabEins übergeben will??

lg

nici
Hmm mir fällt nichts ein ^^
pfid
Beiträge: 535
Registriert: 22. Februar 2008 16:59

Beitrag von pfid »

nici hat geschrieben:so ich hab das jetzt so gemacht, dass ich direkt die Tabs im Designer bearbeitet hab.
Wie spreche ich denn jetzt die einzelnen Tabs an? z.B. wenn ich die Werte die in TabZwei eingegeben werden, TabEins übergeben will??

lg

nici
Willst du uns wirklich wirklich wirklich nicht den Gefallen tun, und endlich mal die Qt Doku (http://doc.trolltech.com/4.4/classes.html) und die Qt Tutorials anschauen (http://doc.trolltech.com/4.4/tutorials.html und http://doc.trolltech.com/4.4/examples.html) ?

Bitte tu es :D
nici
Beiträge: 246
Registriert: 29. Oktober 2008 12:50

Beitrag von nici »

ich hab mir bis jetzt fast das erste durchgelesen, aber das hat mir überhaupt nichts gebracht ehrlich gesagt. Ich mein, da sind keine anständigen Beispiele und auch nicht zu allem. Aber trotzdem werde ich weiterlesen. Genau so die Doku, ich brauch da halt meine Beispiele oder einen kleinen Anfang ^^.
Also wäre nett wenn ihr mir trotzdem weiterhin helfen könntet.

lg

nici
Hmm mir fällt nichts ein ^^
nici
Beiträge: 246
Registriert: 29. Oktober 2008 12:50

Beitrag von nici »

ohh halt, die Examples hab ich ja gar nicht gesehen, uppss, sry Leute.

Ok dann schau ich mir trotzdem alles an. Aber vlt könntet ihr mir noch sagen wie ich den Inhalt eines Tabs ansprechen kann.

lg

nici
Hmm mir fällt nichts ein ^^
Antworten