QWidget 常用接口

QWidget是Qt框架中的基础类,用于创建用户界面中的窗口和控件。它是所有可视化控件的基类,提供了丰富的属性和接口函数用于控制窗口的显示、布局、事件处理等功能。QWidget的常用接口可以分为几大类,下面将逐一介绍:

一、窗口管理

  • show():显示控件或窗口。
  • hide():隐藏控件或窗口。
  • close():关闭窗口。如果控件是窗口,关闭操作也会触发closeEvent()。
  • update():请求重绘控件,但不会立即执行。Qt将在适当的时机安排重绘。
  • repaint():立即重绘控件,触发paintEvent。
  • setGeometry(x, y, width, height):设置控件的位置和大小。
  • resize(width, height):改变控件的大小。
  • move(x, y):移动控件到指定位置。
  • setWindowTitle(title):设置窗口标题。
  • setWindowIcon(icon):设置窗口的图标。
  • setFixedSize(width, height):设置控件的固定大小,防止用户调整大小。
  • adjustSize():自动调整控件大小以适应其内容。
  • raise_():将控件置于堆栈的顶部,使其在所有其他窗口上方。
  • lower():将控件置于堆栈的底部。
  • setVisible(bool visible):设置控件的可见性。
  • isHidden():检查控件是否隐藏。
  • isVisible():检查控件是否可见。
  • setEnabled(bool enabled):启用或禁用控件。
  • isDisabled():检查控件是否禁用。
  • setFocus():为控件设置键盘焦点。
  • clearFocus():移除键盘焦点。
  • hasFocus():检查控件是否拥有键盘焦点。
  • grabKeyboard():捕获键盘输入,所有键盘事件将由此控件处理。
  • releaseKeyboard():释放键盘控制。

二、布局与位置

  • layout():返回控件的布局管理器。
  • setLayout():设置控件的布局管理器。
  • geometry():获取控件的几何信息(位置和大小)。
  • frameGeometry():返回窗口的框架几何位置,包含窗口的边框。
  • pos():返回控件的全局位置(在父窗口或桌面中的位置)。
  • x, y:返回控件的横、纵坐标。
  • size():返回控件的当前大小。
  • width():返回控件的宽度。
  • height():返回控件的高度。
  • minimumSize():返回控件的最小尺寸。
  • maximumSize():返回控件的最大尺寸。
  • setMinimumSize(size):设置控件的最小尺寸。
  • setMaximumSize(size):设置控件的最大尺寸。
  • rect():返回控件的有效绘制区域。

三、外观与样式

  • styleSheet():返回控件的样式表,用于自定义控件的外观。
  • setStyleSheet(styleSheet):设置控件的样式表。
  • font():返回控件的字体。
  • setFont(font):设置控件的字体。
  • cursor():返回控件的光标。
  • setCursor(cursor):设置控件的光标。
  • windowTitle():返回窗口的标题。
  • windowIcon():返回窗口的图标。
  • palette():返回控件的调色板。
  • setToolTip(text):为控件设置工具提示,当鼠标悬停时显示提示信息。

四、事件处理

QWidget提供了多种事件处理函数,用户可以通过重写这些函数来定制控件的行为:

  • mousePressEvent(event):处理鼠标按下事件。
  • mouseReleaseEvent(event):处理鼠标释放事件。
  • mouseMoveEvent(event):处理鼠标移动事件。
  • keyPressEvent(event):处理键盘按下事件。
  • keyReleaseEvent(event):处理键盘释放事件。
  • paintEvent(event):处理绘图事件,用户可以在这里自定义绘图。
  • resizeEvent(event):处理窗口大小调整事件。
  • closeEvent(event):处理窗口关闭事件。

五、其他

  • parentWidget():获取当前窗口的父对象。
  • setParent(parent):设置当前窗口的父对象。
  • mapToGlobal(point):将控件的局部坐标转换为全局屏幕坐标。
  • winId():获取窗口的ID。
  • destroy(destroyWindow, destroySubWindows):销毁窗口及其子窗口。

这些接口函数使得QWidget在Qt框架中成为创建和管理图形用户界面元素的核心工具。开发者可以根据具体需求,通过重写事件处理函数和调整控件的属性来实现自定义的GUI控件和功能。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值