Qwidget
1.简介:
QWidget
类是所有用户界面对象的基类。它从窗口系统接收鼠标,键盘和其他事件,并将其自身绘制在屏幕上。
同时继承:QObject
类 和 QPaintDevice
类
-
QWidget
:类是所有用户界面对象的基类。 -
QObject
:是所有Qt
类的基类。提供了信号-槽的机制。 -
QPaintDevice
:可以使用QPainter
绘制的对象的基类。
2.构造函数
QWidget::QWidget( QWidget *parent = Q_NULLPTR, Qt::WindowFlags f = Qt::WindowFlags() );
parent
:如果是 nullptr
,则小部件将成为一个主窗口,否则小部件将成为 parent
内的子窗口删除其父窗口时,将删除他的小部件。
f:由任何窗口标志的按位“或”组成的值。Qt::Window Flags()就是构造了一个模板类对象默认是Qt::Widget
3.成员函数
移动函数:
void move(const QPoint &) void move(int x, int y)
//设置颜色(一般和颜色填充集合使用)
void setPalette(const QPalette &)
//颜色填充
void setAutoFillBackground(bool enabled)
//设置字体
void setFont(const QFont &);
//设置鼠标追踪事件
void setMouseTracking(bool enable);
//小部件 QWidget *widget=new QWidget(nullptr,Qt::Window); //设置窗口标题: widget->setWindowTitle(QStringLiteral("这是以QWidget窗体")); //widget->setToolTip(QStringLiteral("这是一个提示")); //设置窗口的图标 widget->setWindowIcon(QIcon("F:\\qtItem\\oftenForms\\image\\11.jpg")); //设置窗口的状态: widget->setWindowState(Qt::WindowNoState);//正常状态 //widget->setWindowState(Qt::WindowMinimized);//宿小状态 //widget->setWindowState(Qt::WindowMaximized);//最大状态 //widget->setWindowState(Qt::WindowFullScreen);//充满整个屏幕,连最大化和最小化的按扭都没有了; //widget->setWindowState(Qt::WindowActive);//活动窗口,不知道有什么用 //设置窗口透明读 widget->setWindowOpacity(0.7); //隐藏窗体: // widget->hide(); //关闭窗体 //widget->close(); //设置窗口固定大小 //widget->setFixedSize(400,400); //设置光标 widget->setCursor(Qt::CrossCursor); //显示窗口 widget->show();
4.属性:
-
enabled 启用或禁用widget,默认启用。
-
geometry widget的位置和尺寸
-
3.sizePolicy 设置widget在水平和垂直方向的伸缩策略以及伸缩因子,所谓伸缩策略实际就是widget对待sizeHint的策略,
-
palette:调色板
值属性 意思 Fixed 认为sizeHint值为最佳,widget尺寸不能改变 Minimum 认为sizeHint值为最小,尺寸可以变大,不能变小 Maximum 认为sizeHint值为最大,尺寸可以变小,不能变大 Preferred 认为sizeHint为合适值,可以改变尺寸,但不推荐变大 Expanding 认为sizeHint为合适值,可以改变尺寸,比Preferred适合变大 <