以下是测试代码:
/****************mywidget.h****************/
#ifndef MYWIDGET_H
#define MYWIDGET_H
#include <qwidget.h>
#include <qpushbutton.h>
#include <qmainwindow.h>
class MyWidget : public QMainWindow
{
public:
MyWidget( QWidget *parent = 0, const char *name = 0 );
QPushButton *pre;
QPushButton *next;
};
#endif
/****************mywidget.h****************/
#include "mywidget.h"
#include <qlayout.h>
MyWidget :: MyWidget( QWidget *parent, const char *name)
: QMainWindow( parent, name )
{
QVBoxLayout *layout = new QVBoxLayout( this, 5, 5, "layout" );
pre = new QPushButton("previous", this, "pre");
layout->addWidget(pre);
next = new QPushButton("next", this, "next");
layout->addWidget(next);
resize( 100, 100);
}
运行的时候老是出现:QLayout "unnamed" added to QMainWindow "unnamed", which already has a layout
如果MyWidget继承于QWidget,就不会出现这样的提示。
这是什么原因呢?
如果我希望从QMainWindow继承,该如何修改呢?
望指点一下,thx a lot!
[ 此贴被XChinux在2005-09-26 16:37重新编辑 ]