QToolBar in einem QWidget
Verfasst: 16. Mai 2007 17:04
hi
wie ich sehe kann in einem QMainWindow ein QToolBar verwenden.
Aber ich will es in einem QWidget und das klappt nicht so.
have 2 varianten probiert das 1 geht wegen irgendeinem deklaration nicht
und die 2 variante kann man compilieren aber verursacht crash.
code ausschnitte(das newmsgAct geht ohne probs via context menu oder via button) :
1 variante:
und header:
fehler:
in .cpp
aber es lässt sich kompilieren aber es crasht die anwendung
wie ich sehe kann in einem QMainWindow ein QToolBar verwenden.
Aber ich will es in einem QWidget und das klappt nicht so.
have 2 varianten probiert das 1 geht wegen irgendeinem deklaration nicht
und die 2 variante kann man compilieren aber verursacht crash.
code ausschnitte(das newmsgAct geht ohne probs via context menu oder via button) :
1 variante:
Code: Alles auswählen
include "MessagesDialog.h"
#include <sstream>
#include <QContextMenuEvent>
#include <QMenu>
#include <QCursor>
#include <QPoint>
#include <QMouseEvent>
#include <QPixmap>
#include <QToolBar>
/** Constructor */
MessagesDialog::MessagesDialog(QWidget *parent)
: MainPage(parent)
{
/* Invoke the Qt Designer generated object setup routine */
ui.setupUi(this);
mToolBar = new QToolBar(this);
mToolBar->addAction(newmsgAct);
Code: Alles auswählen
#ifndef _MESSAGESDIALOG_H
#define _MESSAGESDIALOG_H
#include <QFileDialog>
#include "mainpage.h"
#include "ui_MessagesDialog.h"
class MessagesDialog : public MainPage
{
Q_OBJECT
public:
/** Default Constructor */
MessagesDialog(QWidget *parent = 0);
/** Default Destructor */
private slots:
private:
/** Defines the actions for the context menu */
QAction* newmsgAct;
QToolBar *mToolBar;
/** Qt Designer generated object */
Ui::MessagesDialog ui;
};
#endifund die 2 variante:In file included from gui\MessagesDialog.cpp:24:
gui\/MessagesDialog.h:84: error: ISO C++ forbids declaration of `QToolBar' with
no type
gui\/MessagesDialog.h:84: error: expected `;' before '*' token
gui\MessagesDialog.cpp: In constructor `MessagesDialog::MessagesDialog(QWidget*)
':
gui\MessagesDialog.cpp:66: error: `mToolBar' undeclared (first use this function
)
gui\MessagesDialog.cpp:66: error: (Each undeclared identifier is reported only o
nce for each function it appears in.)
mingw32-make[1]: *** [temp\obj\MessagesDialog.o] Error 1
mingw32-make[1]: Leaving directory
mingw32-make: *** [release] Error 2
in .cpp
Code: Alles auswählen
QToolBar *mToolBar = new QToolBar();
mToolBar->addAction(newmsgAct);