請問各位大大 我想在視窗中設定依個畫布,可是我不會設定它的大小,請問是對setpalette寫大小還是QSizePolicy寫呢?
以下附上我的程式碼
/**bump.cpp**/
#include "bump.h"
#include <qpainter.h>
BumpField::BumpField( QWidget *parent, const char *name )
         : QWidget( parent, name )
{ setPalette(QPalette( QColor( 250, 250, 250)));
  }
void BumpField::paintEvent(QPaintEvent *)
{
 QPainter b(this);
 b.setBrush(blue);
 b.setPen(NoPen);
 b.drawRect( 1, 1, 50, 25);
}
QSizePolicy BumpField::sizePolicy() const
{
  return QSizePolicy( QSizePolicy::Expanding, QSizePolicy::Expanding);
}
/**bump.h**/
#ifndef BUMP_H
#define BUMP_H
#include <qwidget.h>
class BumpField : public QWidget
{
    Q_OBJECT
public:
    BumpField( QWidget *parent=0, const char *name=0 );
    QSizePolicy sizePolicy() const;
protected:
    void  paintEvent( QPaintEvent * );
 
};
#endif // CANNON_H
/**main.cpp**/
#include <qapplication.h>
#include <qfont.h>
#include "bump.h"
class MyWidget : public QWidget
{
public:
   MyWidget( QWidget *parent=0, const char *name=0);
};
MyWidget::MyWidget( QWidget *parent, const char *name)
        : QWidget( parent, name)
{
    BumpField *bumpField = new BumpField( this, "bumpField");
}
int main( int argc, char **argv )
{
    QApplication::setColorSpec( QApplication::CustomColor );
    QApplication a( argc, argv );
    MyWidget w;
    w.setGeometry(0, 0, 790, 520 );
    a.setMainWidget( &w );
    w.show();
    return a.exec();
}
這樣我跑出來的畫面視窗很大但是畫布只有左上角一小格,請問我如何讓他佔滿整個視窗呢?