当前位置: 首页 > news >正文

台北市网站建设_网站建设公司_电商网站_seo优化

外贸网站建设工作计划,肇庆高要建设局网站,外部与wordpress发送,最新百度关键词排名哈喽大家好#xff0c;我是20YC小二#xff01;欢迎扫码关注公众号#xff0c;现在可免费领取《C程序员》在线视频教程哦#xff01; ~下面开始今天的分享内容~ 1. QWidget介绍 QWidget 是 Qt 框架中的一个核心类#xff0c;用于创建图形用户界面(GUI)应用程序的基本可视…哈喽大家好我是20YC小二欢迎扫码关注公众号现在可免费领取《C程序员》在线视频教程哦 ~下面开始今天的分享内容~ 1. QWidget介绍 QWidget 是 Qt 框架中的一个核心类用于创建图形用户界面(GUI)应用程序的基本可视化元素。它是所有窗口组件类的父类每个窗口组件都是一个 QWidget。QWidget 类对象常用作父组件或顶级组件使用。QWidget 提供了一套完整的窗口系统包括窗口管理、事件处理、绘图等功能。 QWidget的主要功能和特点包括 窗口管理QWidget 提供了创建和管理窗口的功能包括设置窗口的大小、位置、标题等属性以及处理窗口的显示、隐藏、移动等事件。事件处理QWidget 支持各种事件处理机制包括鼠标事件、键盘事件、定时器事件等。开发人员可以通过重写QWidget 的事件处理函数来实现自定义的事件处理逻辑。绘图功能QWidget 具有强大的绘图功能可以在窗口上绘制各种形状、图像和文本。通过重写 QWidget 的paintEvent() 函数开发人员可以自定义绘制逻辑实现复杂的图形渲染。子控件管理QWidget 可以作为容器组件使用包含其他子控件。开发人员可以通过添加子控件来创建复杂的用户界面并通过布局管理器来控制子控件的位置和大小。信号与槽机制QWidget 同样支持 Qt 的信号与槽机制可以定义控件之间的事件传递和处理逻辑。这使得开发人员可以方便地实现控件之间的交互和协作。 QWidget具有窗口管理、事件处理、绘图功能、子控件管理、信号与槽机制等功能。通过合理地使用 QWidget开发人员可以创建高效且用户友好的图形用户界面提高应用程序的用户体验。 如何使用 头文件#include QWidget cmakefind_package(Qt6 REQUIRED COMPONENTS Widgets)               target_link_libraries(mytarget PRIVATE Qt6::Widgets) qmakeQT widgets 继承于QWidget 和 QPaintDevice 2. QWidget 单独显示例子 #include QWidget QWidget * p_widget new QWidget(); p_widget-setAttribute(Qt::WA_DeleteOnClose, true);p_widget-setWindowTitle(20YC编程社区); p_widget-show(); 3. QWidget 常用信号 // 当窗口标题改变时发射该信号。 void windowTitleChanged(const QString title) // 当窗口图标改变时发射该信号。 void windowIconChanged(const QIcon icon) // 当请求弹开自定义右键菜单时发射该信号。 void customContextMenuRequested(const QPoint pos) 4. 自定义显示风格例子 QWidget::setStyleSheet() 函数用于在 Qt 图形用户界面库中设置窗口控件的样式表。它允许你使用类似于 CSS 的语法来改变部件的外观和感觉。 所有 QWidget 控件及其派生类都支持 setStyleSheet() 函数。 以下例子实现设置红色背景带 2 像素黑色边框边框圆角。 /**** 例子 ****/ QWidget * p_widget new QWidget(this); p_widget-setGeometry(320, 150, 250, 220); p_widget-setStyleSheet(background-color: rgb(255, 0, 0);border: 2px solid black; border-radius: 10px;); 5. QWidget 常用属性 winId() 窗口ID // 访问函数 WId winId() const windowType 窗体类型 // 访问函数详细查看 Qt::WindowType 枚举定义 inline Qt::WindowType windowType() const parentWidget 父窗体 // 访问函数 QWidget *parentWidget() const void setParent(QWidget *parent) isModal 是否模态窗体 窗体一般会有二种显示模式 模态窗体模态窗体是指在其没有被关闭之前用户不能与同一个应用程序的其他窗体 进行交互直到该对话框关闭模态窗体一般应用在提示用户输入或选择弹出界面。非模态窗体非模态窗体是指当窗体被打开时用户还可以与同一个应用程序的其他窗体进行交互 // 访问函数默认 false 非模态窗体 bool isModal() const isEnabled 是否启用状态 非启用禁用的 QWidget 一般会灰色显示并且不会处理鼠标、键盘等事件。 // 访问函数默认 true 启用状态 bool isEnabled() const void setEnabled(bool enabled) void setDisabled(bool disabled) acceptDrops 是否接受拖放事件 // 访问函数默认 false 不接受拖放事件 bool acceptDrops() const void setAcceptDrops(bool on) x,y 坐标和 width, height 大小 // 访问函数 int x() const // 返回 x int y() const // 返回 y QPoint pos() const // 返回 QPoint(x,y) QSize size() const // 返回 QSize(width,height) inline int width() const // 返回 width inline int height() const // 返回 height inline QRect rect() const // 返回 QRect(x,y,width,height) const QRect geometry() const // 返回 QRect(x,y,width,height)void move(int x, int y) // 移动到指定 x,y void move(const QPoint pos) // 移动到指定 QPoint(x,y) void resize(int w, int h) // 调整大小 weight,height void resize(const QSize size) // 调整大小 QSize(weight,height)// 设置 x,y,weight,height inline void setGeometry(int x, int y, int w, int h) // 设置 QRect(x,y,weight,height) void setGeometry(const QRect rect) font 窗体绘制字体 // 访问函数详细查看 QFont 类定义 const QFont font() const void setFont(const QFont font) cursor 鼠标光标 // 访问函数默认 Qt::ArrowCursor详细查看 QCursor 类定义 QCursor cursor() const void setCursor(const QCursor cursor)/**** 例子 ****/ p_widget-setCursor(Qt::IBeamCursor); windowTitle 窗口标题 // 访问函数 QString windowTitle() const void setWindowTitle(const QString )/**** 例子 ****/ p_widget-setWindowTitle(20YC编程社区); windowIcon 窗口图标 // 访问函数详细查看 QIcon 类定义 QIcon windowIcon() const void setWindowIcon(const QIcon icon)/**** 例子 ****/ p_widget-setWindowIcon(QIcon(E:/20YC/logo1.png)); focus 焦点 // 设置焦点 inline void setFocus() { setFocus(Qt::OtherFocusReason); }// 清除焦点 void clearFocus() // 设置焦点详细查看 Qt::FocusReason 枚举定义 void setFocus(Qt::FocusReason reason) // 是否有当前焦点 bool hasFocus() const // 返回焦点策略详细查看 Qt::FocusPolicy 枚举定义 Qt::FocusPolicy focusPolicy() const // 设置焦点策略 void setFocusPolicy(Qt::FocusPolicy policy)visible 窗体可视 // 设置是否可视 virtual void setVisible(bool visible) // 设置是否隐藏 void setHidden(bool hidden) // 显示可视 void show() // 隐藏 void hide() // 是否可视 bool isVisible() const // 是否隐藏 inline bool isHidden() const 6. tooltip 工具提示 设置工具提示文本当鼠标停留在 QWidget 控件区域之上一段时间自动弹出消息提示框当鼠标移开自动消失。 所有 QWidget 控件及其派生类都支持 tooltip 工具提示功能。 // 访问函数 void setToolTip(const QString ) QString toolTip() const void setToolTipDuration(int msec) int toolTipDuration() const/**** 例子 ****/ p_widget-setToolTip(红色方框演示);7. QWidget 界面重绘 update() 刷新界面 调用 QWidget::update() 函数不会立即重绘界面而是把绘制指令放到主消息循环由主消息循环统一调用绘制窗体 // 重绘整个区域 void update() // 以下三个函数只重绘指定区域详细查看 QRect,QRegion 类定义 inline void update(int x, int y, int w, int h) void update(const QRect rect) void update(const QRegion region) repain() 重绘界面 调用 QWidget::repaint() 函数会立即重绘界面 为了避免死循环需要避免在 paintEvent 调用 repaint() 函数 // 重绘整个区域 void repaint() // 以下三个函数只重绘指定区域详细查看 QRect,QRegion 类定义 void repaint(int x, int y, int w, int h) void repaint(const QRect rect) void repaint(const QRegion region) 8. QWidget 窗口控制 // 窗口最小化 void showMinimized() // 窗口最大化 void showMaximized() // 全屏显示 void showFullScreen() // 正常显示 void showNormal() // 是否最小化 bool isMinimized() const // 是否最大化 bool isMaximized() const // 是否全屏显示 bool isFullScreen() const // 关闭窗口 bool close()9. QWidget 常用虚函数 派生类重写父类虚函数可以捕捉父类指定事件。 // 【鼠标按下】事件处理函数 virtual void mousePressEvent(QMouseEvent *event) // 【鼠标释放】事件处理函数 virtual void mouseReleaseEvent(QMouseEvent *event) // 【鼠标双击】事件处理函数 virtual void mouseDoubleClickEvent(QMouseEvent *event) // 【鼠标移动】事件处理函数 virtual void mouseMoveEvent(QMouseEvent *event) // 【鼠标滚轮】事件处理函数 virtual void wheelEvent(QWheelEvent *event) // 【键盘按键按下】事件处理函数 virtual void keyPressEvent(QKeyEvent *event) // 【键盘按键释放】事件处理函数 virtual void keyReleaseEvent(QKeyEvent *event) // 【窗体重绘】事件处理函数 virtual void paintEvent(QPaintEvent *event) // 【窗体移动】事件处理函数 virtual void moveEvent(QMoveEvent *event) // 【窗体尺寸改变】事件处理函数 virtual void resizeEvent(QResizeEvent *event) // 【窗体关闭】事件处理函数 virtual void closeEvent(QCloseEvent *event) // 【鼠标右键菜单】事件处理函数 virtual void contextMenuEvent(QContextMenuEvent *event) // 【窗体显示】事件处理函数 virtual void showEvent(QShowEvent *event) // 【窗体隐藏】事件处理函数 virtual void hideEvent(QHideEvent *event) 10. QWidget 各种风格显示例子 功能创建各种显示风格的 QWidget 控件如设置 QWidget 背景颜色、边框、圆角边框等。 .h 头文件源码 #ifndef WIDGET_H #define WIDGET_H #include QWidgetclass Widget : public QWidget {Q_OBJECT public:Widget(QWidget *parent nullptr);~Widget();}; #endif // WIDGET_H.cpp 源文件源码 #include widget.hWidget::Widget(QWidget *parent): QWidget(parent) {this-setWindowTitle(20YC编程社区);// 设置蓝色背景QWidget * p_widget1 new QWidget(this);p_widget1-setGeometry(20, 20, 200, 100);p_widget1-setStyleSheet(background-color: blue;);// 设置带透明度的蓝色背景// rgba(0, 0, 255, 125)rgb分别表示红色 绿色 蓝色的值a表示透明度取值范围0 - 255QWidget * p_widget2 new QWidget(this);p_widget2-setGeometry(250, 20, 300, 100);p_widget2-setStyleSheet(background-color: rgba(0, 0, 255, 125););// 设置绿色背景带 2 像素黑色边框QWidget * p_widget3 new QWidget(this);p_widget3-setGeometry(20, 150, 250, 220);p_widget3-setStyleSheet(background-color: rgb(0, 255, 0);border: 2px solid black;);// 设置红色背景带 2 像素黑色边框边框圆角QWidget * p_widget4 new QWidget(this);p_widget4-setStyleSheet(QWidget {background-color: rgb(255, 0, 0);border: 2px solid black; border-radius: 10px;});p_widget4-setToolTip(红色方框演示); }Widget::~Widget() { }
http://www.lebaoying.cn/news/96256.html

相关文章:

  • 社交网站 cms怎么制作长图
  • 山西网站建设鸣蝉网站商城建设6
  • 能搜任何网站的浏览器企业网站案例公司
  • 网站的新闻栏与产品栏如何做省内新闻最新消息
  • wordpress网站加载过慢网站seo多少钱
  • 网站备案的网站名称建筑公司网站的目标用户
  • 建材网站免费模板轴承外贸网站怎么做
  • 西安高端网站建设网站建设鑫科技
  • 成都网站关键词推广优化服装商城的网站建设
  • 邯郸wap网站建设报价网站导航栏模板怎么做
  • 福建省建设安全监督站的网站企业建立一个网站如何租用域名
  • 企业wap网站模板网站开发后端语言有哪些
  • 提供做pc端网站做网站app价格多少钱
  • 展板模板网站wordpress一键采集文章
  • 做抛物线的网站wordpress dux5.1
  • 常用的网站都有哪些做电商网站有什语言好
  • 软装设计网站大全wordpress建站侵权
  • 社交网站建设流程金融公司网站免费模板
  • 如何用云指做自己的网站江西恒通建设工程有限公司网站
  • 好的网站设计特点怎么跟电商合作去哪找
  • 网站建设月总结国外设计网站欣赏
  • 公司网站设计制作长沙什么网站可以分享wordpress
  • 素马网站设计公司wordpress文章发送代码块
  • 优质的常州网站建设酒店网站模板设计方案
  • 男人和女人做羞羞的事情网站永远免费的域名
  • 百度站长平台账号搜索引擎优化的主要工作
  • 网站策划书的撰写佛山网站设计步骤
  • 西宁做网站是什么网站功能介绍
  • 网站开发文献综述范文网页设计制作实训总结
  • 介绍自己的做的网站个人证书查询网入口免费