QT系统学习篇(3)- Qt开发常用算法及控件原理

news/2024/10/3 11:46:16 标签: qt, 学习

一、Qt中

Qt框架中和模块提供一些算法和常用函数
比如

    double d1=-59.6,d2=92.5;
    double d3=qAbs(d1);
    double d4=qMax(d1,d2);
    qDebug()<<"d3="<<d3<<"d4="<<d4<<endl;

二、Qt窗口及控件原理设计

理解Qt窗口的生成、属性

1、Qt窗口

main.c

#include "widget.h"
#include <QApplication>

int main(int argc, char *argv[])
{
    QApplication a(argc, argv);
    Widget w;
    w.show();//显示窗口,不管窗口是否是模态
    return a.exec();
}

其中return的a.exec();和return的0;区别在哪里?
直接return 0,其w中的创建资源有没有被回收?
1、a.exec(): 进入事件循环,相当于把程序运行交给Qt处理,进入程序的循环状态。
2、return 0: 程序就直接退出,不能达到显示的效果

改变窗口
widget.cpp

Widget::Widget(QWidget *parent)
    : QWidget(parent)
    , ui(new Ui::Widget)
{
    ui->setupUi(this);
    //禁止窗口改变尺寸
    this->setFixedSize(this->geometry().size());

    //或者手动固定窗体大小
    setMinimumSize(600,600);
    setMaximumSize(600,600);

    //去掉窗口标题
    this->setWindowFlag(Qt::FramelessWindowHint);
}

2、控件原理设计

widget.cpp

Widget::Widget(QWidget *parent)
    : QWidget(parent)
    , ui(new Ui::Widget)
{
    ui->setupUi(this);
    //禁止窗口改变尺寸
    this->setFixedSize(this->geometry().size());

    QPushButton *quitbuttons=new QPushButton("quit",this);
    quitbuttons->setGeometry(60,40,130,40);
    quitbuttons->setFont(QFont("宋体",22,QFont::Bold));
    connect(quitbuttons,SIGNAL(clicked()),qApp,SLOT(quit()));


}

http://www.niftyadmin.cn/n/5688298.html

相关文章

springbot,JWT令牌的使用。实现http请求拦截校验。

JWT 由三部分组成&#xff0c;用点&#xff08;.&#xff09;分隔 Header&#xff08;头部&#xff09; Payload&#xff08;负载&#xff09;Signature&#xff08;签名) 一、原理 Jwt原理其实很简单&#xff0c;在后端首先要有个拦截器&#xff0c;他会拦截所有http请求&…

【CSS in Depth 2 精译_044】第七章 响应式设计概述

当前内容所在位置&#xff08;可进入专栏查看其他译好的章节内容&#xff09; 第一章 层叠、优先级与继承&#xff08;已完结&#xff09; 1.1 层叠1.2 继承1.3 特殊值1.4 简写属性1.5 CSS 渐进式增强技术1.6 本章小结 第二章 相对单位&#xff08;已完结&#xff09; 2.1 相对…

LLM Visualization

Brendan Bycroft的网站&#xff0c;提供了交互式的可视化工具&#xff0c;展示了大型语言模型&#xff08;LLMs&#xff09;的内部机制 通过这个 链接 https://bbycroft.net/llm 访问 借助这个交互可视化&#xff0c;能够加深对模型结构和行为的了解

leetcode每日一题day22(24.10.2)——准时到达的列车最小时速

思路&#xff1a;这种在有约束条件情况下&#xff0c;求最值或最符合要求的情况&#xff0c;首先是很容易想到&#xff0c;从时速为1开始往后找找到满足条件就输出&#xff0c;但这无疑工程量很大&#xff0c;每种可能的速度都要对列车数组进行遍历&#xff0c; 时间复杂度为C…

深度学习:cGAN和pix2pix图像转换

cGAN和pix2pix的基础概念 cGAN cGAN是条件生成对抗网络&#xff08;Conditional Generative Adversarial Networks&#xff09;的简称。 它是一种基于基础GAN&#xff08;Generative Adversarial Networks&#xff09;架构的变体&#xff0c;通过给GAN模型引入额外的信息或条…

互联网前后端分离的开发场景,一般会员和数据权限的判断是放在前端还是后端?

推荐学习文档 golang应用级os框架&#xff0c;欢迎stargolang应用级os框架使用案例&#xff0c;欢迎star案例&#xff1a;基于golang开发的一款超有个性的旅游计划app经历golang实战大纲golang优秀开发常用开源库汇总想学习更多golang知识&#xff0c;这里有免费的golang学习笔…

使用Charles进行Mock数据:高效提升前端交互测试效率

在前端开发和测试过程中&#xff0c;我们时常会遇到依赖外部系统HTTP接口的情况。然而&#xff0c;由于外部系统未部署、服务不可用或其他原因&#xff0c;接口无法正常响应&#xff0c;这给我们的测试工作带来了很大的困扰。特别是在QA环境中&#xff0c;这种情况尤为常见。为…

【分布式微服务云原生】如何在ActiveMQ中优雅处理提前支付的延时订单

摘要 本文将深入探讨在ActiveMQ中如何处理用户提前支付的延时订单问题。我们将介绍如何通过更新订单状态、检查延迟任务、取消延迟消息、使用死信队列、消息选择性消费、设置合理的超时时间以及及时反馈和日志记录等策略&#xff0c;来确保系统的一致性和及时响应用户操作。文…