我把代码贴出来吧,帮我看看。
//头文件 omainframe.h
#ifndef OMAINFRAME_H
#define OMAINFRAME_H
//#include <qmotifdialog.h>
#include <qwidget.h>
#include <qdialog.h>
class QLabel;
class QPushButton;
class OMainFrame : public QDialog
{
Q_OBJECT
private:
OMainFrame( QWidget*parent = 0, const char *name = 0,
bool modal = FALSE, WFlags flags = 0 );
OMainFrame();
public:
~OMainFrame();
private:
static OMainFrame *mainframe;
QPushButton *testBtn;
public:
static OMainFrame *getMainframe();
public slots:
};
#endif // OMAINFRAME_H
//源文件 omainframe.cpp
#include <qpushbutton.h>
#include "include/omainframe.h"
OMainFrame * OMainFrame::mainframe = new OMainFrame( 0, "optface", FALSE , 0x00001000);
OMainFrame::OMainFrame( QWidget *parent, const char *name, bool modal, WFlags flags )
: QDialog( parent, name, modal, flags )
{
testBtn = new QPushButton(this);
connect(testBtn, SIGNAL(clicked()), this, SLOT(close()));
}
OMainFrame::~OMainFrame()
{
}
OMainFrame *OMainFrame::getMainframe()
{
return OMainFrame::mainframe;
}
//main.cpp
#include <qapplication.h>
#include "include/omainframe.h"
#include <qmessagebox.h>
#include <qtextcodec.h>
int main( int argc, char **argv )
{
QApplication a(argc,argv);
a.setDefaultCodec( QTextCodec::codecForName("GBK") );
OMainFrame *h = OMainFrame::getMainframe();
//OMainFrame *h = new OMainFrame;
a.setMainWidget( h );
QObject::connect( h, SIGNAL(lastWindowClosed()), &a, SLOT(quit()) );
h->show();
return a.exec();
}
能编译通过,但运行不了,好像连main函数都没进