【Qt】QWidget类详解(函数篇)

Qt 专栏收录该内容
147 篇文章 33 订阅

00. 目录

01. 概述

QWidget类是所有用户界面对象的基类。

02. Reimplemented Public Functions

 virtual QPaintEngine *paintEngine() const override

03. Public Slots

 bool close()
 void hide()
 void lower()
 void raise()
 void repaint()
 void setDisabled(bool disable)
 void setEnabled(bool)
 void setFocus()
 void setHidden(bool hidden)
 void setStyleSheet(const QString &styleSheet)
 virtual void setVisible(bool visible)
 void setWindowModified(bool)
 void setWindowTitle(const QString &)
 void show()
 void showFullScreen()
 void showMaximized()
 void showMinimized()
 void showNormal()
 void update()

04. Signals

 void customContextMenuRequested(const QPoint &pos)
 void windowIconChanged(const QIcon &icon)
 void windowTitleChanged(const QString &title)

05. Static Public Members

 QWidget *createWindowContainer(QWindow *window, QWidget *parent = nullptr, Qt::WindowFlags flags = Qt::WindowFlags())
 QWidget *find(WId id)
 QWidget *keyboardGrabber()
 QWidget *mouseGrabber()
 void setTabOrder(QWidget *first, QWidget *second)

06. Protected Functions

virtual void actionEvent(QActionEvent *event)
 virtual void changeEvent(QEvent *event)
 virtual void closeEvent(QCloseEvent *event)
 virtual void contextMenuEvent(QContextMenuEvent *event)
 void create(WId window = 0, bool initializeWindow = true, bool destroyOldWindow = true)
 void destroy(bool destroyWindow = true, bool destroySubWindows = true)
 virtual void dragEnterEvent(QDragEnterEvent *event)
 virtual void dragLeaveEvent(QDragLeaveEvent *event)
 virtual void dragMoveEvent(QDragMoveEvent *event)
 virtual void dropEvent(QDropEvent *event)
 virtual void enterEvent(QEvent *event)
 virtual void focusInEvent(QFocusEvent *event)
 bool focusNextChild()
 virtual bool focusNextPrevChild(bool next)
 virtual void focusOutEvent(QFocusEvent *event)
 bool focusPreviousChild()
 virtual void hideEvent(QHideEvent *event)
 virtual void inputMethodEvent(QInputMethodEvent *event)
 virtual void keyPressEvent(QKeyEvent *event)
 virtual void keyReleaseEvent(QKeyEvent *event)
 virtual void leaveEvent(QEvent *event)
 virtual void mouseDoubleClickEvent(QMouseEvent *event)
 virtual void mouseMoveEvent(QMouseEvent *event)
 virtual void mousePressEvent(QMouseEvent *event)
 virtual void mouseReleaseEvent(QMouseEvent *event)
 virtual void moveEvent(QMoveEvent *event)
 virtual bool nativeEvent(const QByteArray &eventType, void *message, long *result)
 virtual void paintEvent(QPaintEvent *event)
 virtual void resizeEvent(QResizeEvent *event)
 virtual void showEvent(QShowEvent *event)
 virtual void tabletEvent(QTabletEvent *event)
 virtual void wheelEvent(QWheelEvent *event)

07. Reimplemented Protected Functions

 virtual bool event(QEvent *event) override
 virtual void initPainter(QPainter *painter) const override
 virtual int metric(QPaintDevice::PaintDeviceMetric m) const override

08. Protected Slots

 void updateMicroFocus()

09. Macros

 QWIDGETSIZE_MAX

10. 函数

QWidget::QWidget(QWidget *parent = nullptr, Qt::WindowFlags f = Qt::WindowFlags())
构造函数  父控件为parent,标志有f指定。
如果parent是nullptr,则新窗口Widget将成为一个窗口。如果parent是另一个Widget,则此Widget将成为parent内的子窗口。删除其父项时,将删除新的窗口Widget。
Widget标志参数f通常为0,但可以将其设置为自定义窗口的框架(即父级必须为nullptr)。要自定义框架,请使用由任何窗口标志的按位“或”组成的值。
如果将子窗口Widget添加到已经可见的窗口Widget,则必须显式显示该子窗口以使其可见。
请注意,Qt的X11版本可能无法在所有系统上提供样式标志的所有组合。这是因为在X11上,Qt只能询问窗口管理器,并且窗口管理器可以覆盖应用程序的设置。在Windows上,Qt可以设置所需的任何标志。    
    
[slot] bool QWidget::close()    
关闭此Widget。返回true如果Widget被关闭;否则返回false。

首先,它向Widget发送QCloseEvent。如果Widget接受关闭事件,则将其隐藏。如果它忽略该事件,则什么也不会发生。QWidget :: closeEvent()的默认实现接受close事件。

如果该窗口Widget具有Qt :: WA_DeleteOnClose标志,则该窗口Widget也将被删除。无论窗口Widget是否可见,关闭事件都会传递到窗口Widget。

所述的QApplication :: lastWindowClosed当最后可见主窗口(即没有父窗口)与()信号被发射的Qt :: WA_QuitOnClose属性组是封闭的。默认情况下,将为除瞬态窗口(例如初始屏幕,工具窗口和弹出菜单)之外的所有窗口Widget设置此属性。    
    
[signal] void QWidget::customContextMenuRequested(const QPoint &pos)
当窗口小部件的contextMenuPolicy为Qt :: CustomContextMenu且用户已请求窗口小部件上的上下文菜单时,将发出此信号。位置pos是窗口小部件接收的上下文菜单事件的位置。通常,这是在小部件坐标中。此规则的例外是QAbstractScrollArea及其子类,这些子类将上下文菜单事件映射到viewport()的坐标。
    
[slot] void QWidget::hide()
隐藏Widget。此函数等效于setVisible(false)。
注意:如果您正在使用QDialog或其子类,并且在此函数之后调用show()函数,则对话框将以其原始位置显示。    
    
[slot] void QWidget::lower()
将Widget降低到父Widget堆栈的底部。

在此调用之后,小部件将在视觉上位于任何重叠的同级小部件之后(并因此而被其遮盖)。   
    
[slot] void QWidget::raise()
将此小部件提升到父小部件堆栈的顶部。
在此调用之后,该小部件将在视觉上位于任何重叠的同级小部件之前。    

[slot] void QWidget::repaint()
除非立即禁用更新或隐藏小部件,否则立即通过调用paintEvent()直接重绘小部件。
    
[slot] void QWidget::setDisabled(bool disable)    
如果disable为true,则禁用窗口小部件输入事件;否则,禁用窗口小部件输入事件。否则启用输入事件。    
    
[slot] void QWidget::setFocus()    
如果此窗口小部件或其父级之一是活动窗口,则将键盘输入焦点赋予该窗口小部件(或其焦点代理)。    
    
[slot] void QWidget::setHidden(bool hidden)
便利功能,等效于setVisible(!hidden)。
    
[slot] void QWidget::show()
显示窗口小部件及其子窗口小部件。
    
[slot] void QWidget::showFullScreen()    
以全屏模式显示小部件。
调用此函数仅影响Windows。
要从全屏模式返回,请调用showNormal()。    
    
[slot] void QWidget::showMaximized()  
显示最大化的小部件。

调用此函数仅影响Windows。
    
[slot] void QWidget::showMinimized()    
将最小化的小部件显示为图标。

调用此函数仅影响Windows。    
    
[slot] void QWidget::showNormal()    
在最大化或最小化窗口小部件后对其进行还原。    

[slot] void QWidget::update()    
除非禁用更新或隐藏小部件,否则更新小部件。    
    
[protected slot] void QWidget::updateMicroFocus()
更新小部件的微焦点。    
    
[signal] void QWidget::windowIconChanged(const QIcon &icon)    
当窗口的图标更改时,以新图标作为参数,将发出此信号。    
    
[signal] void QWidget::windowTitleChanged(const QString &title)    
当窗口的标题更改时,以新标题作为参数,将发出此信号。    
    
[virtual] QWidget::~QWidget()    
析构函数   
    
[virtual protected] void QWidget::actionEvent(QActionEvent *event)    
每当更改窗口小部件的动作时,都会使用给定事件调用此事件处理程序。
    
QList<QAction *> QWidget::actions() const    
返回此小部件操作的列表(可能为空)。    
    
void QWidget::activateWindow()    
将包含此窗口小部件的顶层窗口小部件设置为活动窗口。    
    
void QWidget::addAction(QAction *action)    
将操作操作追加到此小部件的操作列表中。    
    
    
void QWidget::addActions(QList<QAction *> actions)    
将操作actions追加到此小部件的操作列表中。    
    
void QWidget::adjustSize()    
调整窗口小部件的大小以适合其内容。    
    
QPalette::ColorRole QWidget::backgroundRole() const    
返回窗口小部件的背景角色。    
    
QBackingStore *QWidget::backingStore() const    
背景角色从小部件的调色板中定义用于渲染背景的笔刷。
    
[virtual protected] void QWidget::changeEvent(QEvent *event)    
可以重新实现此事件处理程序以处理状态更改。    
    
QWidget *QWidget::childAt(int x, int y) const    
返回小部件坐标系统中位置(x,y)的可见子小部件。如果在指定位置没有可见的子窗口小部件,则该函数返回nullptr。

QWidget *QWidget::childAt(const QPoint &p) const
返回窗口小部件自身坐标系统中p点处的可见子窗口小部件。   
    
void QWidget::clearFocus()    
从小部件获取键盘输入焦点。    
    
void QWidget::clearMask()
删除所有有setMask设置的Mask。    
    
[virtual protected] void QWidget::closeEvent(QCloseEvent *event)    
当Qt从窗口系统收到对顶级窗口小部件的窗口关闭请求时,将使用给定事件调用此事件处理程序。    
 void MainWindow::closeEvent(QCloseEvent *event)
 {
     if (maybeSave()) {
         writeSettings();
         event->accept();
     } else {
         event->ignore();
     }
 }


QMargins QWidget::contentsMargins() const
contentMargins函数返回小部件的内容边距。    
    
QRect QWidget::contentsRect() const    
返回窗口小部件内的区域。    
    
[virtual protected] void QWidget::contextMenuEvent(QContextMenuEvent *event)    
可以在子类中重新实现此事件处理程序(用于event event),以接收小部件上下文菜单事件。    
    
[protected] void QWidget::create(WId window = 0, bool initializeWindow = true, bool destroyOldWindow = true)    
创建一个新的窗口小部件窗口。    
    
[static] QWidget *QWidget::createWindowContainer(QWindow *window, QWidget *parent = nullptr, Qt::WindowFlags flags = Qt::WindowFlags())    
创建一个QWidget,可以将窗口嵌入到基于QWidget的应用程序中。    
    
[protected] void QWidget::destroy(bool destroyWindow = true, bool destroySubWindows = true)    
释放窗口系统资源。如果destroyWindow为true,则销毁窗口小部件窗口。
    
[virtual protected] void QWidget::dragEnterEvent(QDragEnterEvent *event)    
当拖动正在进行中并且鼠标进入该小部件时,将调用此事件处理程序。该事件在event参数中传递。    
    
[virtual protected] void QWidget::dragLeaveEvent(QDragLeaveEvent *event)
 当拖动正在进行中并且鼠标离开该小部件时,将调用此事件处理程序。该事件在event参数中传递。   
    
    
[virtual protected] void QWidget::dragMoveEvent(QDragMoveEvent *event)    
如果正在进行拖动,并且发生以下任何一种情况,则将调用此事件处理程序:光标进入此窗口小部件,光标在该窗口小部件内移动,或者在此窗口小部件获得焦点时按下键盘上的修改键。该事件在event参数中传递。    
    
    
[virtual protected] void QWidget::dropEvent(QDropEvent *event)    
当将拖动拖放到此小部件上时,将调用此事件处理程序。该事件在event参数中传递。    
    
    
WId QWidget::effectiveWinId() const    
返回窗口小部件的有效窗口系统标识符,即本机父级的窗口系统标识符。    
    
void QWidget::ensurePolished() const    
确保小部件及其子级已被QStyle抛光(即具有正确的字体和调色板)。    
    
[virtual protected] void QWidget::enterEvent(QEvent *event)    
可以在子类中重新实现此事件处理程序,以接收在事件参数中传递的小部件输入事件。    
    
[override virtual protected] bool QWidget::event(QEvent *event)
这是主事件处理程序;它处理事件event。您可以在子类中重新实现此功能,但是我们建议改用一种专用的事件处理程序。    
    
[static] QWidget *QWidget::find(WId id)    
返回指向带有窗口标识符/句柄id的窗口小部件的指针。    
    
[virtual protected] void QWidget::focusInEvent(QFocusEvent *event)    
可以在子类中重新实现此事件处理程序,以接收小部件的键盘焦点事件(接收到焦点)。该事件在event参数中传递    
    
[protected] bool QWidget::focusNextChild()    
查找一个新的窗口小部件,以使其适合于Tab键盘焦点,true如果可以找到新的窗口小部件,则返回,否则返回false。
    
[virtual protected] bool QWidget::focusNextPrevChild(bool next)    
根据Tab和Shift + Tab键,true找到一个使键盘焦点对准的新窗口小部件,如果可以找到一个新窗口小部件,则返回,否则返回false。    
    
    
[virtual protected] void QWidget::focusOutEvent(QFocusEvent *event)    
可以在子类中重新实现此事件处理程序,以接收小部件的键盘焦点事件(焦点丢失)。事件在event参数中传递。    
    
    
[protected] bool QWidget::focusPreviousChild()    
根据Shift + Tab键,找到一个使键盘焦点对准true的新窗口小部件,如果可以找到一个新窗口小部件,则返回,否则返回false。    
    
    
QWidget *QWidget::focusProxy() const    
 返回焦点代理,nullptr如果没有焦点代理,则返回。   
    
QWidget *QWidget::focusWidget() const    
返回已调用setFocus的此小部件的最后一个子级。对于顶级窗口小部件,此窗口小部件将在激活此窗口的情况下获得焦点    
    
QFontInfo QWidget::fontInfo() const    
返回小部件当前字体的字体信息。等同于QFontInfo(widget->font())。    
    
QFontMetrics QWidget::fontMetrics() const
返回小部件当前字体的字体指标。等同于QFontMetrics(widget->font())。    
    
QPalette::ColorRole QWidget::foregroundRole() const    
返回前台角色。  
    
QPixmap QWidget::grab(const QRect &rectangle = QRect(QPoint(0, 0), QSize(-1, -1)))
将窗口小部件渲染为受给定矩形限制的像素图。如果小部件有任何子代,则它们也将被绘制在适当的位置。    
    
void QWidget::grabGesture(Qt::GestureType gesture, Qt::GestureFlags flags = Qt::GestureFlags())    
用特定标志将小部件订阅给定手势。    
    
void QWidget::grabKeyboard()    
抓取键盘输入。    
    
void QWidget::grabMouse()
抓住鼠标输入。    
    
void QWidget::grabMouse(const QCursor &cursor)    
抓住鼠标输入并更改光标形状。    
    
    
int QWidget::grabShortcut(const QKeySequence &key, Qt::ShortcutContext context = Qt::WindowShortcut)    
在Qt的快捷方式系统中添加一个快捷方式,该快捷方式在给定的上下文中监视给定的键序列。如果上下文是Qt :: ApplicationShortcut,则快捷方式将应用于整个应用程序。否则,它不是此窗口小部件Qt :: WidgetShortcut的本地窗口,还是该窗口本身的Qt :: WindowShortcut的本地窗口。    
    
QGraphicsEffect *QWidget::graphicsEffect() const    
graphicsEffect函数返回指向小部件的图形效果的指针。    
    
QGraphicsProxyWidget *QWidget::graphicsProxyWidget() const    
返回图形视图中相应嵌入式窗口小部件的代理窗口小部件;否则返回nullptr。   
    
    
bool QWidget::hasEditFocus() const
返回true此窗口小部件当前是否具有编辑焦点;否则为假。
    
[virtual] bool QWidget::hasHeightForWidth() const    
true如果小部件的首选高度取决于其宽度,则返回;否则返回false。否则返回false。
    
    
[virtual] int QWidget::heightForWidth(int w) const    
给定宽度w,返回此小部件的首选高度。    
    
[virtual protected] void QWidget::hideEvent(QHideEvent *event)    
可以在子类中重新实现此事件处理程序,以接收小部件隐藏事件。该事件在event参数中传递。    
    
[override virtual protected] void QWidget::initPainter(QPainter *painter) const    
将绘画笔,背景和字体初始化为与给定小部件相同的颜色。在QWidget上打开绘制器时,将自动调用此函数。
    
[virtual protected] void QWidget::inputMethodEvent(QInputMethodEvent *event)    
可以在子类中重新实现此事件处理程序(用于event event),以接收Input Method组合事件。当输入方法的状态更改时,将调用此处理程序。    
    
    
[virtual] QVariant QWidget::inputMethodQuery(Qt::InputMethodQuery query) const    
此方法仅与输入窗口小部件有关。输入法使用它来查询窗口小部件的一组属性,以便能够支持复杂的输入法操作,以支持周围的文本和重新转换。    
    
void QWidget::insertAction(QAction *before, QAction *action)    
插入动作的动作,以行动这个小部件的列表,在行动之前之前。如果before是nullptr或before不是此小部件的有效操作,它将追加操作。
    
void QWidget::insertActions(QAction *before, QList<QAction *> actions)    
在之前的动作之前,将动作动作插入到此小部件的动作列表中。如果before是或before不是此小部件的有效操作,它将追加操作。nullptr
    
bool QWidget::isAncestorOf(const QWidget *child) const    
返回true如果这个小部件是父母(或祖父母等任何级别),给定的孩子,和两个小部件都是在同一窗口; 否则返回false。    
    
bool QWidget::isEnabledTo(const QWidget *ancestor) const
true如果启用了祖先,则返回此小部件是否将被启用;否则返回false。    
    
bool QWidget::isHidden() const
返回true如果控件是隐藏的,否则返回false。
    
bool QWidget::isVisibleTo(const QWidget *ancestor) const
返回:true如果显示祖先,则此小部件是否将变为可见;否则返回false。
    
bool QWidget::isWindow() const    
返回true如果控件是一个独立的窗口,否则返回false。
    
[virtual protected] void QWidget::keyPressEvent(QKeyEvent *event)
可以在子类中重新实现此事件处理程序(用于event event),以接收小部件的按键事件。    
    
[virtual protected] void QWidget::keyReleaseEvent(QKeyEvent *event)
可以在子类中重新实现此事件处理程序(用于event event),以接收小部件的关键释放事件。
    
[static] QWidget *QWidget::keyboardGrabber()
返回当前正在获取键盘输入的小部件。
    
QLayout *QWidget::layout() const
返回安装在此窗口小部件上的布局管理器,或者返回未安装的nullptr布局管理器。
    
    
[virtual protected] void QWidget::leaveEvent(QEvent *event)    
可以在子类中重新实现此事件处理程序,以接收在event参数中传递的小部件离开事件。    
    
QPoint QWidget::mapFrom(const QWidget *parent, const QPoint &pos) const    
将小部件坐标pos从父级坐标系转换为该小部件的坐标系。该家长切不可nullptr且必须调用控件的父。    
    
QPoint QWidget::mapFromGlobal(const QPoint &pos) const    
将全局屏幕坐标pos转换为小部件坐标。    
    
QPoint QWidget::mapFromParent(const QPoint &pos) const    
将父窗口小部件坐标pos转换为窗口小部件坐标。    
    
QPoint QWidget::mapTo(const QWidget *parent, const QPoint &pos) const   
将小部件坐标pos转换为parent的坐标系。该家长切不可nullptr且必须调用控件的父。  
    
QPoint QWidget::mapToGlobal(const QPoint &pos) const    
将小部件坐标pos转换为全局屏幕坐标。例如,mapToGlobal(QPoint(0,0))将给出小部件的左上像素的全局坐标。

    
QPoint QWidget::mapToParent(const QPoint &pos) const    
将小部件坐标pos转换为父小部件中的坐标。   
    
    
QRegion QWidget::mask() const    
返回当前在窗口小部件上设置的蒙版。如果未设置任何掩码,则返回值将为空白区域。    
    
[override virtual protected] int QWidget::metric(QPaintDevice::PaintDeviceMetric m) const    
重新实现:QPaintDevice :: metric(QPaintDevice :: PaintDeviceMetric指标)常量。    
    
[virtual protected] void QWidget::mouseDoubleClickEvent(QMouseEvent *event)    
可以在子类中重新实现该事件处理程序(用于event event),以接收该小部件的鼠标双击事件。   
    
    
[static] QWidget *QWidget::mouseGrabber()    
返回当前正在捕获鼠标输入的小部件。
    
[virtual protected] void QWidget::mouseMoveEvent(QMouseEvent *event)    
可以在子类中重新实现该事件处理程序(用于event event),以接收该小部件的鼠标移动事件。    
    
[virtual protected] void QWidget::mousePressEvent(QMouseEvent *event)
可以在子类中重新实现此事件处理程序(用于event event),以接收小部件的鼠标按下事件。    
    
[virtual protected] void QWidget::mouseReleaseEvent(QMouseEvent *event)
可以在子类中重新实现该事件处理程序(用于event event),以接收该小部件的鼠标释放事件。
    
    
void QWidget::move(int x, int y)
    
[virtual protected] void QWidget::moveEvent(QMoveEvent *event)
可以在子类中重新实现此事件处理程序,以接收在event参数中传递的小部件移动事件。当窗口小部件接收到此事件时,它已经处于新位置。
    
    
[virtual protected] bool QWidget::nativeEvent(const QByteArray &eventType, void *message, long *result)    
可以在子类中重新实现此特殊事件处理程序,以接收由eventType标识的本机平台事件,这些事件在message参数中传递。
    
QWidget *QWidget::nativeParentWidget() const    
返回此窗口小部件的本机父级,即具有系统标识符或下一个没有系统父级的下一个祖先窗口小部件nullptr。    
    
QWidget *QWidget::nextInFocusChain() const    
返回此小部件的焦点链中的下一个小部件。
    
void QWidget::overrideWindowFlags(Qt::WindowFlags flags)    
将窗口小部件的窗口标志设置为flags,而无需告知窗口系统。    
    
[override virtual] QPaintEngine *QWidget::paintEngine() const    
 返回小部件的绘制引擎。   
    
[virtual protected] void QWidget::paintEvent(QPaintEvent *event)    
可以在子类中重新实现此事件处理程序,以接收在event中传递的绘画事件。    
    
QWidget *QWidget::parentWidget() const    
返回此窗口小部件的父级,或者nullptr如果它没有任何父窗口小部件,则返回。    
    
QWidget *QWidget::previousInFocusChain() const    
 previousInFocusChain函数返回此小部件的焦点链中的上一个小部件。
    
    
void QWidget::releaseKeyboard()    
释放键盘。    
    
    
void QWidget::releaseMouse()    
释放鼠标    
    
void QWidget::releaseShortcut(int id)   
从Qt的快捷方式系统中删除具有给定ID的快捷方式。该小部件将不再接收该快捷方式的键序列的QEvent :: Shortcut事件(除非它具有具有相同键序列的其他快捷方式)。    
    
void QWidget::removeAction(QAction *action)    
 从此小部件的动作列表中删除动作动作。   
    
void QWidget::repaint(int x, int y, int w, int h)    
在小部件内重新绘制了一个矩形(x,y,w,h)。    
    
void QWidget::repaint(const QRect &rect)    
重新绘制了小部件内部的矩形rect。
    
void QWidget::repaint(const QRegion &rgn)    
    
    
void QWidget::resize(int w, int h)    
对应于resize(QSize(w,h))。    
    
[virtual protected] void QWidget::resizeEvent(QResizeEvent *event)    
    
    
bool QWidget::restoreGeometry(const QByteArray &geometry)    
恢复存储在字节数组geometry中的顶级窗口小部件的几何形状和状态。true成功回报;否则返回false。
    
    
QByteArray QWidget::saveGeometry() const    
保存顶级小部件的当前几何图形和状态。    
    
QScreen *QWidget::screen() const    
返回窗口小部件所在的屏幕。    
    
void QWidget::scroll(int dx, int dy)    
将小部件及其子dx像素向右滚动,并dy向下滚动。这两个DX和DY可能是负的。    
    
void QWidget::scroll(int dx, int dy, const QRect &r)    
    
void QWidget::setAttribute(Qt::WidgetAttribute attribute, bool on = true)    
如果on为true,则在此小部件上设置attribute属性;否则为false。否则清除属性。
    
void QWidget::setBackgroundRole(QPalette::ColorRole role)    
将窗口小部件的后台角色设置为role。    
    
void QWidget::setBaseSize(int basew, int baseh)    
这对应于setBaseSize(QSize(basew,baseh))。将小部件的基本大小设置为width basew和height baseh。    
    
void QWidget::setContentsMargins(int left, int top, int right, int bottom)
将窗口小部件内容周围的边距设置为left,top,right和bottom。边距由布局系统使用,并且可由子类用于指定要绘制的区域(例如,不包括框架)。    
    
void QWidget::setContentsMargins(const QMargins &margins)    
setContentsMargins函数设置小部件内容周围的边距。    
    
void QWidget::setEditFocus(bool enable)    
    
void QWidget::setFixedHeight(int h)    
在不更改宽度的情况下,将小部件的最小和最大高度都设置为h。提供方便。    
    
void QWidget::setFixedSize(const QSize &s)
窗口小部件的最小和最大大小都设置为s,从而防止窗口小部件增大或缩小。    
    
void QWidget::setFixedSize(int w, int h)    
    
    
void QWidget::setFixedWidth(int w)    
将窗口小部件的最小和最大宽度都设置为w而不更改高度。提供方便。    
    
void QWidget::setFocus(Qt::FocusReason reason)    
如果此窗口小部件或其父级之一是活动窗口,则将键盘输入焦点赋予该窗口小部件(或其焦点代理)。该理由参数将被传递给这个函数发送的任何焦点事件,它是用来给的是什么引起的小部件获得焦点的解释。如果该窗口不处于活动状态,则当该窗口变为活动状态时,将为小部件提供焦点。    
    
    
void QWidget::setFocusProxy(QWidget *w)
将窗口小部件的焦点代理设置为窗口小部件w。如果w是nullptr,则函数会将此窗口小部件重置为没有焦点代理。    
    
void QWidget::setForegroundRole(QPalette::ColorRole role)    
 将小部件的前台角色设置为role。   
    
void QWidget::setGeometry(int x, int y, int w, int h)    
    
void QWidget::setGraphicsEffect(QGraphicsEffect *effect)
setGraphicsEffect函数用于设置小部件的图形效果。    
    
void QWidget::setLayout(QLayout *layout)    
将此窗口小部件的布局管理器设置为layout。
    
void QWidget::setMask(const QBitmap &bitmap)    
仅使小部件的位图具有对应的1位的像素可见。如果该区域包括小部件的rect()外部的像素,则取决于平台,该区域中的窗口系统控件可能可见,也可能不可见。
    
void QWidget::setMask(const QRegion &region)    
    
void QWidget::setMaximumSize(int maxw, int maxh)    
void QWidget::setMinimumSize(int minw, int minh)
    
void QWidget::setParent(QWidget *parent)    
将窗口小部件的父级设置为parent,并重置窗口标志。小部件将移动到其新父级的位置(00)。    
    
void QWidget::setParent(QWidget *parent, Qt::WindowFlags f)    

    
   
 void QWidget::setShortcutAutoRepeat(int id, bool enable = true)
 如果enable为true,则启用具有给定id的自动重复快捷方式;否则禁用。    

     
void QWidget::setShortcutEnabled(int id, bool enable = true)
如果enable为true,则启用具有给定id的快捷方式;否则为false 。否则,快捷方式将被禁用。
    
void QWidget::setSizeIncrement(int w, int h)    
void QWidget::setSizePolicy(QSizePolicy::Policy horizontal, QSizePolicy::Policy vertical)    
void QWidget::setStyle(QStyle *style)
将窗口小部件的GUI样式设置为style。样式对象的所有权不会转移。    

    
[static] void QWidget::setTabOrder(QWidget *first, QWidget *second)    
 放第二后插件第一在聚焦顺序部件。   

void QWidget::setWindowFlag(Qt::WindowType flag, bool on = true)    
如果on为true,则在此小部件上设置窗口标志标志;否则为false。否则清除标志。    
    
void QWidget::setWindowRole(const QString &role)
将窗口的角色设置为role。这仅对X11上的Windows有意义。    
    
void QWidget::setWindowState(Qt::WindowStates windowState)
将窗口状态设置为windowState。窗口状态是Qt :: WindowState:Qt :: WindowMinimized,Qt :: WindowMaximized,Qt :: WindowFullScreen和Qt :: WindowActive的OR组合。
    
    
void QWidget::setupUi(QWidget *widget)    
设置指定窗口小部件的用户界面。    
    
    
[virtual protected] void QWidget::showEvent(QShowEvent *event)    
可以在子类中重新实现此事件处理程序,以接收在事件参数中传递的窗口小部件显示事件。    
    
void QWidget::stackUnder(QWidget *w)    
将小部件放置在父小部件堆栈中的w下。    
    
QStyle *QWidget::style() const    

    
[virtual protected] void QWidget::tabletEvent(QTabletEvent *event)
    
bool QWidget::underMouse() const
返回true小部件是否在鼠标光标下;否则返回false。    
    
    
void QWidget::ungrabGesture(Qt::GestureType gesture)    
从给定的手势类型退订窗口小部件    
    
void QWidget::update(int x, int y, int w, int h)    
void QWidget::update(const QRegion &rgn)    
    
void QWidget::updateGeometry()    
通知布局系统此窗口小部件已更改,并且可能需要更改几何形状。    
    
    
QRegion QWidget::visibleRegion() const    
返回可以发生绘制事件的未遮挡区域。    
    
    
[virtual protected] void QWidget::wheelEvent(QWheelEvent *event)    
可以在子类中重新实现该事件处理程序(用于event event),以接收该小部件的转轮事件。
    
WId QWidget::winId() const    
返回窗口小部件的窗口系统标识符。    
  
QWidget *QWidget::window() const    
返回此窗口小部件的窗口,即具有(或可能具有)窗口系统框架的下一个祖先窗口小部件。
    
QWindow *QWidget::windowHandle() const    
果这是本机窗口小部件,则返回关联的QWindow。否则返回null。
    
QString QWidget::windowRole() const    
返回窗口的角色,或一个空字符串。
    
Qt::WindowStates QWidget::windowState() const    
返回当前窗口状态。窗口状态是Qt :: WindowState:Qt :: WindowMinimized,Qt :: WindowMaximized,Qt :: WindowFullScreen和Qt :: WindowActive的OR组合。    
    
    
Qt::WindowType QWidget::windowType() const    
返回此窗口小部件的窗口类型。这与windowFlags()和Qt :: WindowType_Mask相同。    
    
    
 

11. 附录

11.1 Qt教程汇总
网址:https://dengjin.blog.csdn.net/article/details/115174639

  • 1
    点赞
  • 0
    评论
  • 12
    收藏
  • 一键三连
    一键三连
  • 扫一扫,分享海报

©️2021 CSDN 皮肤主题: 编程工作室 设计师:CSDN官方博客 返回首页
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值