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

计算机网络网站建设的实训总结可以找厂家的网站

计算机网络网站建设的实训总结,可以找厂家的网站,东营集团网站建设,在珠海注册公司需要什么资料常用控件 一、控件1、介绍2、自定义控件3、使用4、注意事项 二、enabled1、介绍2、示例 三、geometry1、介绍2、坐标系3、示例(1)移动按钮位置(2)reject按钮移动 四、Windowsframe1、介绍2、影响3、与Window Frame相关的API4、示例…

常用控件

  • 一、控件
    • 1、介绍
    • 2、自定义控件
    • 3、使用
    • 4、注意事项
  • 二、enabled
    • 1、介绍
    • 2、示例
  • 三、geometry
    • 1、介绍
    • 2、坐标系
    • 3、示例
      • (1)移动按钮位置
      • (2)reject按钮移动
  • 四、Windowsframe
    • 1、介绍
    • 2、影响
    • 3、与Window Frame相关的API
    • 4、示例
      • (1)geometry和frameGeometry,坐标系的差别。
      • (2)设置窗口标题
      • (2)设置窗口图标
  • 五、qrc文件
    • 1、介绍
    • 2、使用qrc文件
    • 3、优点
    • 4、使用示例
  • 六、windowOpacity
    • 1、介绍
    • 2、注意事项
    • 3、示例
  • 七、cursor
    • 1、介绍
    • 2、示例

一、控件

1、介绍

  • Qt控件是Qt用户界面上最基本的组件类型,也是构成用户界面的基本结构。
  • QWidget类是Qt控件的基类,也是所有控件的父类。所有的Qt控件都是QWidget类的子类,因此都继承了QWidget类的特性。
特性
接收用户的输入事件,如鼠标和键盘输入
在用户界面上显示控件内容
存放其它控件

2、自定义控件

  • 在实际开发过程中,许多应用需要满足特定的用户界面需求,因此Qt提供了自定义控件的功能。
  • 自定义控件是指使用Qt的基础控件和功能,通过扩展和重写来满足特定需求的控件。
  • 自定义控件通常是从QWidget类继承而来的,开发者需要创建一个新的类,并在该类中重写必要的函数,如paintEvent、mousePressEvent等,以实现自定义的外观和行为。

3、使用

  • 使用Qt Designer:Qt Designer是Qt提供的一个图形界面设计工具,开发者可以在其中拖拽控件到窗体上,并设置控件的属性。
  • 纯代码添加控件:开发者可以通过纯代码的方式添加控件。这种方式需要手动创建控件对象,并设置其属性和事件处理函数。

4、注意事项

  • 在使用控件时,需要注意控件的父子关系。如果控件没有设置父控件,那么它就是一个独立的窗口。
  • 在设置控件的属性时,需要确保属性的值是有效的,否则可能会导致控件的行为异常。
  • 在处理控件的事件时,需要注意事件的触发条件和处理逻辑,以确保控件能够正确地响应用户的操作。

二、enabled

1、介绍

  • enabled属性通常用于控制控件(如按钮、菜单项、窗口部件等)是否可用或是否处于启用状态。当一个控件被禁用时,用户无法与之交互,通常会显示为灰色或暗淡。如果⼀个widget被禁用,则该widget的子元素也被禁用。
方法说明
setEnabled(bool)用于设置控件的启用状态。当参数为true时,控件变为启用状态,允许用户进行交互;当参数为false时,控件变为禁用状态,通常显示为灰色,且用户无法与之交互
isEnabled() const用于查询控件当前的启用状态。如果控件处于启用状态,则返回true;如果控件被禁用,则返回false

2、示例

  • 下方代码在widget.cpp文件中所写,实现的是两个按钮,第一个为测试禁用,第二个有切换第一个的禁用状态。
void Widget::on_pushButton_clicked()
{qDebug() << "on_pushButton_clicked";
}void Widget::on_pushButton_change_clicked()
{bool enable = ui->pushButton->isEnabled();if(enable){ui->pushButton->setEnabled(false);}else{ui->pushButton->setEnabled(true);}
}

在这里插入图片描述
在这里插入图片描述

三、geometry

1、介绍

  • geometry用于描述窗口控件的位置和大小。这个属性可以视为是四个属性的统称,即x(横坐标)、y(纵坐标)、width(宽度)和height(高度)。
  • 它返回一个QRect对象,该对象包含了窗口控件的左上角坐标以及宽度和高度信息。
方法说明
geometry()获取当前窗口控件的geometry属性。该函数返回一个QRect对象,通过该对象可以访问x、y、width和height等属性。即该对象包含了窗口控件的左上角坐标以及宽度和高度信息
setGeometry(int x, int y, int width, int height),setGeometry(QRect)设置当前窗口控件的geometry属性

2、坐标系

在这里插入图片描述
在这里插入图片描述

3、示例

(1)移动按钮位置

widget.cpp

void Widget::on_pushButton_up_clicked()
{QRect rect = ui->pushButton_target->geometry();         // 不能是rect方法,否则在下面的设置时,x和y的值都是0qDebug() << rect;// rect.setY(rect.y() - 2);// ui->pushButton_target->setGeometry(rect);ui->pushButton_target->setGeometry(rect.x(),rect.y() - 2, rect.width(), rect.height());}void Widget::on_pushButton_down_clicked()
{QRect rect = ui->pushButton_target->geometry();qDebug() << rect;ui->pushButton_target->setGeometry(rect.x(),rect.y() + 2, rect.width(), rect.height());
}void Widget::on_pushButton_left_clicked()
{QRect rect = ui->pushButton_target->geometry();qDebug() << rect;ui->pushButton_target->setGeometry(rect.x() - 2,rect.y(), rect.width(), rect.height());
}void Widget::on_pushButton_right_clicked()
{QRect rect = ui->pushButton_target->geometry();qDebug() << rect;ui->pushButton_target->setGeometry(rect.x() + 2,rect.y(), rect.width(), rect.height());
}

在这里插入图片描述

(2)reject按钮移动

void Widget::on_pushButton_accept_clicked()
{ui->label->setText("少年,加油,你此时的头发还很茂盛");
}void Widget::on_pushButton_reject_clicked()
{// int width = ui->label->geometry().width();// int height = ui->label->geometry().height();// int newWidth = rand() % width;// int newHeight = rand() % height;// ui->pushButton_reject->move(newWidth, newHeight);
}void Widget::on_pushButton_reject_pressed()
{int width = ui->label->geometry().width();int height = ui->label->geometry().height();int newWidth = rand() % width;int newHeight = rand() % height;ui->pushButton_reject->move(newWidth, newHeight);
}

在这里插入图片描述

四、Windowsframe

1、介绍

  • Window Frame(窗口框架)是指操作系统自带的窗口边框,它通常包围在窗口主体周围,并包含一些操作系统级别的控件,如最小化、最大化和关闭按钮,以及窗口标题栏等。这个窗口框架对Qt应用程序的界面布局和坐标系统有一定的影响。

2、影响

  • 坐标系统:在Qt中,控件的坐标系统通常是以其父控件为参考的。然而,当涉及到窗口框架时,情况就变得有些复杂。有些Qt API是以窗口主体(即不考虑窗口框架的部分)为参考点的,而有些则是以窗口框架的左上角为参考点。例如,geometry()和setGeometry()函数通常是以窗口主体为参考点,不考虑窗口框架;而frameGeometry()和setFrameGeometry()函数则是以窗口框架为参考点。
  • 界面布局:窗口框架的存在会影响窗口内部控件的布局。由于窗口框架占据了一定的空间,因此在进行界面设计时,需要考虑到这一点,以确保控件能够正确地显示在预期的位置。
  • 窗口大小调整:当用户调整窗口大小时,窗口框架的大小也会相应改变。Qt提供了相应的事件和函数来处理这种情况,允许开发人员根据窗口大小的变化来调整内部控件的布局或大小。

3、与Window Frame相关的API

API说明
frameGeometry()返回包含窗口框架的几何形状(位置和大小)
setFrameGeometry()设置包含窗口框架的几何形状
windowTitle()获取窗口的标题
setWindowTitle(const QString& title)设置窗口的标题
windowIcon()获取窗口的图标,返回QIcon对象
setWindowIcon(const QIcon& icon)设置窗口的图标

4、示例

(1)geometry和frameGeometry,坐标系的差别。

Widget::Widget(QWidget *parent): QWidget(parent), ui(new Ui::Widget)
{ui->setupUi(this);connect(ui->pushButton, &QPushButton::clicked, this, &Widget::handler);
}
void Widget::handler()
{QRect rect1 = this->geometry();QRect rect2 = this->frameGeometry();qDebug() << rect1;qDebug() << rect2;
}

在这里插入图片描述

  • 如果不使用slots(槽函数),而在构造方法中进行输出查看。因为Widget刚刚创建,还没有加入到对象树中,此时也就不具备Window frame。
  • 在按钮的slots中,由于用户点击的时候,对象树已经构造好了。此时Widget已经具备了Windowframe。此时,geometry和frameGeometry在位置和尺寸才出现差异。

(2)设置窗口标题

this->setWindowTitle("窗口");// QPushButton* button = new QPushButton(this);
// button->setText("按钮");
// button->move(300,300);
// button->setWindowTitle("修改");

在这里插入图片描述

  • 注释代码无作用,因为button控件的坐标系统是以其父控件为参考的。

(2)设置窗口图标

// QIcon icon("D:\\内容保存地\\图片保存地\\R-C.png");
// QIcon icon("D:/SoftwareContentStorageLocation/QtCode/3widget/img/R-C.png");
QIcon icon("D:\\SoftwareContentStorageLocation\\QtCode\\3widget\\img\\R-C.png");this->setWindowIcon(icon);

在这里插入图片描述

五、qrc文件

1、介绍

  • qrc文件是一种资源文件,用于存储应用程序的资源,如图像、图标、音频文件等。这些资源在编译时被嵌入到应用程序的可执行文件中,从而在运行时无需单独打包或查找这些文件。
  • qrc文件采用XML格式来定义资源的路径和名称。

2、使用qrc文件

  • 创建qrc文件:创建一个.qrc文件,并在其中定义资源。
  • 添加资源:将图像、图标、音频文件等资源添加到项目的某个目录中,然后在.qrc文件中引用这些文件。
  • 编译资源:在Qt项目中,需要将.qrc文件添加到项目的.pro文件中,这样,在编译项目时,qmake工具会自动处理.qrc文件,并将资源嵌入到最终的可执行文件中。但默认是有的,不需要手动操作。
  • 访问资源:在代码中,可以使用QString的:qrc/路径语法来访问资源。

3、优点

  • 简化分发:由于资源被嵌入到可执行文件中,因此无需单独打包这些文件,简化了应用程序的分发。
  • 提高访问速度:资源在应用程序启动时就被加载到内存中,因此访问速度通常比从磁盘加载要快。
  • 便于管理:所有的资源都集中在一个或多个.qrc文件中,便于管理和维护。

4、使用示例

在这里插入图片描述
在这里插入图片描述

  • 文件名可按需修改。

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

QIcon icon(":/R-C.png");
this->setWindowIcon(icon);
  • 这里的": /“前缀表示资源文件的根路径,它是你在.qrc文件中通过prefix属性设置的。如果prefix属性被设置为其他值(如”/images"),则需要相应地调整路径(如":/images/R-C.png")。
    在这里插入图片描述

在这里插入图片描述

六、windowOpacity

1、介绍

  • windowOpacity 是 QWindow 类的一个属性,它用于设置窗口的不透明度(透明度)。即它允许开发者控制窗口的透明度。通过调整这个属性的值,可以使窗口部分或完全透明,从而创建各种视觉效果。
  • windowOpacity 的值范围是 0.0 到 1.0。其中,0.0 表示窗口完全透明。1.0 表示窗口完全不透明。
方法说明
windowOpacity()获取窗口当前的不透明度值。返回一个 float 类型的值,表示窗口的不透明度
setWindowOpacity(float opacity)设置窗口的不透明度。传入一个 float 类型的值作为参数,该值将作为窗口的新不透明度

2、注意事项

  • 当设置不透明度时,如果传入的值小于 0.0 或大于 1.0,setWindowOpacity 方法内部会进行判定,并且不会应用这些值。然而,为了编码的规范性和可读性,建议在调用此方法之前对传入的值进行验证。
  • 窗口的不透明度变化可能不是精确的,因为浮点数运算的精度限制。这通常不会影响视觉效果,但在进行精确计算时需要注意。

3、示例

  • 调整窗口透明度
void Widget::on_pushButton_add_clicked()
{float opacity = this->windowOpacity();if(opacity >= 1.0){return;}qDebug() << opacity;opacity += 0.1;this->setWindowOpacity(opacity);
}void Widget::on_pushButton_sub_clicked()
{float opacity = this->windowOpacity();if(opacity <= 0){return;}qDebug() << opacity;opacity -= 0.1;this->setWindowOpacity(opacity);
}

在这里插入图片描述

七、cursor

1、介绍

  • cursor 是一个与光标相关的属性或方法,它通常用于设置或获取窗口或控件的光标样式。它允许开发者为窗口或控件设置特定的光标样式,这些样式定义了当鼠标悬停在窗口或控件上时显示的光标形状。
  • Qt 提供了多种内置的光标样式,如普通箭头光标、等待光标、文本输入光标等,同时也允许开发者使用自定义的图片来设置光标。但使用自定义的图片来设置光标时,通常涉及到创建一个 QPixmap 对象,然后基于这个对象构造一个 QCursor 对象,并将其设置为窗口或控件的光标。
  • cursor 属性可以应用于任何继承自 QWidget 的类,包括窗口、按钮、标签等控件。
API说明参数
setCursor(const QCursor &cursor)设置窗口或控件的光标形状QCursor对象,表示要设置的光标形状
setCursor(const QPixmap &pixmap, int hotx, int hoty)使用自定义图片设置光标形状,并指定光标的热点位置QPixmap对象,表示自定义的光标图片。hotx和hoty,分别表示光标热点在图片中的x和y坐标
cursor()获取窗口或控件的当前光标对象。返回值QCursor对象,表示当前的光标形状

2、示例

  • 图形化使用
    在这里插入图片描述
  • 代码使用
QCursor cursor(Qt::WaitCursor);
ui->pushButton->setCursor(cursor);
  • Qt::CursorShape枚举,其中定义了Qt提供的内置光标形状。
    在这里插入图片描述
  • 使用自定义的图片设置光标。qrc的创建参见上面。
    在这里插入图片描述
QPixmap pim(":/1.png");
pim = pim.scaled(40, 40);           // 修改图片大小
QCursor cursor(pim, 10, 10);        // 热点位置
ui->pushButton->setCursor(cursor);

本文到这里就结束了,如有错误或者不清楚的地方欢迎评论或者私信
本文只是在学习过程中所做的总结,不会涉及过深的概念
创作不易,如果觉得博主写得不错,请点赞、收藏加关注支持一下💕💕💕


文章转载自:

http://LCijBJCL.tqLyb.cn
http://v3yZdRpn.tqLyb.cn
http://DvbsYqVT.tqLyb.cn
http://8cbFjch4.tqLyb.cn
http://p8DUk8yE.tqLyb.cn
http://XcHUZPCl.tqLyb.cn
http://eqdia079.tqLyb.cn
http://zIFqzCwZ.tqLyb.cn
http://TRGrEhih.tqLyb.cn
http://BhnaveQb.tqLyb.cn
http://1zux1yuR.tqLyb.cn
http://5zBEsE5z.tqLyb.cn
http://tZM3MtZN.tqLyb.cn
http://YpC44Tiw.tqLyb.cn
http://vm75hvuM.tqLyb.cn
http://immOh2pa.tqLyb.cn
http://7ybqlKnm.tqLyb.cn
http://YToXGId2.tqLyb.cn
http://lNZaQz0Y.tqLyb.cn
http://2y2niy7y.tqLyb.cn
http://kSeywG4j.tqLyb.cn
http://HZO7kmnw.tqLyb.cn
http://K1HFEk3v.tqLyb.cn
http://EW6qR208.tqLyb.cn
http://7557oZTg.tqLyb.cn
http://lfmuzlKR.tqLyb.cn
http://0dUe5C4p.tqLyb.cn
http://VKkfks2V.tqLyb.cn
http://tXa892cj.tqLyb.cn
http://mFB1HNFI.tqLyb.cn
http://www.dtcms.com/wzjs/696512.html

相关文章:

  • 婚恋网站建设成本做团购网站多少钱
  • 标书制作公司网站随州网站建设哪家实惠
  • 安康市网站建设兰州官网seo分析
  • 工程建设资质单位网站58同城招聘找工作
  • 佛山建站平台电子商务网页制作试题及答案
  • 小企业网站怎么做关于建设网站的图片
  • 网站建设买阿里云云服务器网站建设 仿站
  • 朝阳制作网站泰安房产网签成交数据
  • 柳州网站推广最好的公司宿城区建设局网站
  • 浙江建设厅网站查询网站建设合同首付多少钱
  • 股票订阅网站开发阿里巴巴国际站怎么开店
  • 个人网站模板源码下载宁波建设监理协会网站
  • 网站开发及应用网站如何做邮箱订阅
  • 辉县网站建设求职简历php网站模板修改
  • 网站建设中最重要的是什么意思国内网站有哪些
  • 网站开发管理课程设计说明供水开发建设公司网站
  • 生成论坛网站nas可以做网站服务器吗
  • 文佳佳做网站营销型网站一套
  • 南沙门户网站建设怎么做一个企业网站
  • 自己创建一个网页兰州人工优化
  • wordpress政企网站深圳宝安区是什么风险
  • 世界500强企业招聘网站本地wordpress无法打开网站
  • WordPress多用户建站如何做繁体字网站
  • 武威建设局网站wordpress 邮箱配置
  • 定州网站建设公司thinkphp 显示第三方网站图片
  • 网站开发的运行可行性现在有没有免费的网站
  • 网站如何做微信支付重庆提供行业网站建站报价
  • 公司两个网站如何都备案中建人才网
  • 网站404页面源码企业网站建设要多
  • 四川煤矿标准化建设网站百姓网网站开发的意义