QMenu Fehler stretch

Alles rund um die Programmierung mit Qt
Antworten
daRonny
Beiträge: 23
Registriert: 21. November 2007 23:09
Kontaktdaten:

QMenu Fehler stretch

Beitrag von daRonny »

Hallo Jungs,

ich hab mal eine Frage. Bestimmt werdet ihr euch gleich an den Kopf fassen.
Aber könnt ihr mir bei meinem Problem helfen?
Es geht um das QMenu. Wie auf dem Bild zu sehen geht die Bar nicht bis zum Ende. Könnt ihr mir da helfen?

Mein Code zur Bar ist :

Code: Alles auswählen

QMenuBar* myMenuBar = new QMenuBar(this);
    
fileMenu = myMenuBar->addMenu(tr("&File"));
aboutMenu = myMenuBar->addMenu(tr("&Help"));
die Actions denke ich muss ich jetzt alle nicht aufführen.

[img]
http://pommesbude.mine.nu/apache2-defau ... rwrong.jpg
[/img][/img]
Zuletzt geändert von daRonny am 1. Oktober 2008 10:09, insgesamt 3-mal geändert.
CaptnChaos
Beiträge: 605
Registriert: 28. Juni 2007 15:01
Kontaktdaten:

Beitrag von CaptnChaos »

leitest du von QWidget ab?
Wenn ja stell den GUI auf QMainWindow um.
daRonny
Beiträge: 23
Registriert: 21. November 2007 23:09
Kontaktdaten:

Beitrag von daRonny »

Also das Widget wurde im QDesigner erstellt.
Und auf das UI greif ich hier zu:

Code: Alles auswählen

private:
           Ui::Form mForm
und im cpp dann unter dem Konstruktor

Code: Alles auswählen


Form::Form(QWidget* parent)
	: QWidget(parent)
{
	mForm.setupUi(this);

ansonsten greif ich ganz normal auf das QMenuBar was schon im Widget
sein müsste drauf zu und füge dort einfach die QMenüs ein.
Trotzdem wird das QMenuBar nicht bis zum ende gestretcht.
Mist.
Ginsengelf
Beiträge: 79
Registriert: 2. Mai 2007 10:21

Beitrag von Ginsengelf »

Moin, wie KernelPanic schon sagte, leite deine Klasse nicht von QWidget, sondern von QMainWindow ab.

Ginsengelf
daRonny
Beiträge: 23
Registriert: 21. November 2007 23:09
Kontaktdaten:

Beitrag von daRonny »

Ich hab nun anstatt

Code: Alles auswählen

class Form : public QWidget
nun

Code: Alles auswählen

class Form : public QMainWindow
mit dem Konstruktor komm ich jedoch nicht mehr ganz klar.

Code: Alles auswählen


Form::Form(QWidget* parent)
	: QWidget(parent)
{
Sorry für diese Umständlichkeiten.
Ginsengelf
Beiträge: 79
Registriert: 2. Mai 2007 10:21

Beitrag von Ginsengelf »

daRonny hat geschrieben:

Code: Alles auswählen

class Form : public QMainWindow
OK
daRonny hat geschrieben: mit dem Konstruktor komm ich jedoch nicht mehr ganz klar.

Code: Alles auswählen


Form::Form(QWidget* parent)
	: QWidget(parent)
{
Der Konstruktor für Form ruft hier den Konstruktor für die Basisklasse auf, die jetzt nicht mehr QWidget, sondern QMainWindow ist. Daher:

Code: Alles auswählen

Form::Form(QWidget* parent)
	: QMainWindow(parent)
{
Ginsengelf
Antworten