QT 常用类与组件

news2024/11/30 14:39:01

0 思维导图

1 信息调试类(QDebug)

#include "widget.h"
#include<iostream>     //printf
#include<QDebug>       //qDebuf
using namespace std;   //cout

Widget::Widget(QWidget *parent)
    : QWidget(parent)
{
    //输出函数
    //使用方式1:
    printf("hello world\n");
    //使用方式2:
    cout << "你好" << endl;//UTF-8 有可能输出乱码,GBK可正确输出
    //使用方式3:
    qDebug("%s","hello world");    //类似于printf
    qDebug() << "你 好";            //类似于cout
}

Widget::~Widget()
{
}

2 按钮组件(QPushButton)

3 行编辑器类(QLineEdit)

4 标签类(QLabel)

#include "widget.h"
#include "ui_widget.h"

Widget::Widget(QWidget *parent)
    : QMainWindow(parent)
    , ui(new Ui::Widget)
{
    ui->setupUi(this);
    //1、使用一个无参构造添加一个按钮
    QPushButton *btn1 = new QPushButton; //无参构造(没有指定父组件)
    //btn1->show();//可以输出,但不在父组件内
    //给组件指定父组件,让其依附于界面而存在
    btn1->setParent(this);
    btn1->setText("按钮1");      //给组件设置文本内容
    qDebug() << btn1->size();   //界面大小
    btn1->resize(QSize(70,35)); //设置按钮组件的大小
    btn1->move(200,0);          //移动组件位置
    btn1->setStyleSheet("background-color:red;border-radius:10px;color:white");  //设置样式表
    //btn1->setEnabled(false);//设置使用状态(bool类型true/false)

    //2、构造一个按钮时,是定父组件
    QPushButton *btn2 = new QPushButton(this); //将当前界面设置成父组件(可以使用btn1作为父组件,那么btn2会在btn1中,但默认设置为this(当前界面))
    //btn2->setText("按钮2");
    btn2->resize(btn1->size());  //使用其他按钮的大小设置该组件的大小
    btn2->move(btn1->x(),80);    //将btn2移动到btn1下面80的位置
    btn2->setEnabled(false);     //设置为不可用状态
    btn2->setIcon(QIcon("D:/hqyj/QT/day1/02First/windowIcon.png"));  //设置图标

    //3、构造按钮时给定文本内容以及父组件
    QPushButton *btn3 = new QPushButton("按钮3",this);
    btn3->resize(btn1->size());
    btn3->move(btn2->x(),btn2->y()+50);
    btn3->setIcon(QIcon("D:/hqyj/QT/day1/02First/windowIcon.png"));

    //4、构造一个按钮,构造时给定父组件、文本内容、icon
    QPushButton *btn4 = new QPushButton(QIcon("D:/hqyj/QT/day1/02First/windowIcon.png"),
                                        "按钮4",this);
    btn4->resize(btn1->size());
    btn4->move(btn3->x(),btn3->y()+50);

    /************************************************************************************************/
    //1、构造一个行编辑器,构造时给定父组件
    QLineEdit *edit1 = new QLineEdit(this);
    //edit1->setText("请输入...");       //设置编辑器中的文本内容
    edit1->setPlaceholderText("QQ号码/手机/邮箱");   //设置编辑器的占位文本
    edit1->resize(200,40);              //设置尺寸
    edit1->move(btn1->x()+80,0);        //移动位置
    edit1->setEnabled(false);           //设置不可用状态

    //2、构造一个行编辑器,构造时,给定父组件以及文本内容
    QLineEdit *edit2 = new QLineEdit("啦啦啦啦啦,我是卖报的小行家",this);
    qDebug() << edit2->text();          //获取行编辑器中文本内容
    edit2->resize(edit1->size());
    edit2->move(edit1->x(),edit1->height()+20);
    edit2->setEchoMode(QLineEdit::Password); //设置回显模式

    /****************************************** QLabel ******************************************************/
    //1、实例化一个标签
    QLabel *lab1 = new QLabel("账户",this);
    lab1->resize(50,50);
    lab1->setStyleSheet("background-color:yellow");
    lab1->setPixmap(QPixmap("D:/hqyj/QT/day1/02First/windowIcon.png"));   //展示图片
    lab1->setScaledContents(true); //设置内容自适应

}

Widget::~Widget()
{
    delete ui;
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/951327.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【python爬虫】—图片爬取

图片爬取 需求分析Python实现 需求分析 从https://pic.netbian.com/4kfengjing/网站爬取图片&#xff0c;并保存 Python实现 获取待爬取网页 def get_htmls(pageslist(range(2, 5))):"""获取待爬取网页"""pages_list []for page in pages:u…

[Pandas] 求百分比并添加百分(%)号

导入数据 import pandas as pddf pd.DataFrame(data{orders: [2130,5102,3256,1297,1918,786],repeat_orders: [73,158,89,30,49,18]}) df df[repetition_rate] df[repeat_orders] / df[orders] df df[repetition_rate] df[repetition_rate].apply(lambda x: format(x, .2…

哈希表+字符串

一)知识回顾: 1)哈希表是什么?哈希表是存储数据的容器 2)哈希表有啥用?快速的查找某一个元素 3)什么时候使用哈希表?频繁的查找某一个数的时候&#xff0c;当我们快速查找某一个数的时候&#xff0c;不光要想到哈希表还需要想到二分查找&#xff0c;但是二分查找算法的局限性…

Linux——(第二章)Linux的目录结构

VMwear workstations下载及安装 Ubuntu server 18.04安装 VScode下载与安装 使用VS Code连接远程服务器 MobaXterm的下载安装及远程连接 Filezila的下载、安装与使用&#xff08;向服务器传输文件&#xff09; 目录 1.基本介绍 2.Linux目录结构 3.具体目录说明 4.补充 1.基…

从编程语言的角度来理解正则表达式

程序代码是对现实事物处理逻辑的抽象&#xff0c;而正则表达式&#xff0c;则是对复杂的字符匹配程序代码的进一步抽象&#xff1b;也就是说&#xff0c;高度简洁的正则表达式&#xff0c;可以认为其背后所对应的&#xff0c;是字符匹配程序代码&#xff0c;而字符匹配程序代码…

低代码:工业互联网从“学步”到“奔跑”的加速器

一、政策、技术合力推进&#xff0c;工业互联网发展提速 工业制造业曾经创造了我国的崛起神话&#xff0c;最近几年&#xff0c;随着新闻中一些老牌制造业厂商的闭幕&#xff0c;很多人都开始思考&#xff1a;未来工业会是什么样子&#xff1f; 放眼全球&#xff0c;各国对于工…

阿里云轻量应用服务器Linux-Centos7下Oracle19c的安装

初始环境&#xff1a;阿里云轻量应用服务器已经重置系统为CentOS7.3-64位 具体目标&#xff1a;安装Oracle Database 19c 目录 第一步&#xff1a;检查Linux系统版本第二步&#xff1a;下载Oracle19c的安装包第三步&#xff1a;下载Oracle19c的预安装包第四步&#xff1a;上传到…

react学习之路:TS报错-Its return type ‘Element[]‘ is not a valid JSX element

React报错之 Its return type ‘Element[]’ is not a valid JSX element 产生的原因&#xff1a; 1&#xff0c;函数组件返回的是Element数组&#xff0c;不是JSX元素。 2&#xff0c;如果组件返回的是JSX和null以外的值会提示类似’xxx’ cannot be used as a JSX componen…

023 - STM32学习笔记 - 扩展外部SDRAM(二) - 扩展外部SDRAM实验

023- STM32学习笔记 - 扩展外部SDRAM&#xff08;一&#xff09; - 扩展外部SDRAM实验 本节内容中要配置的引脚很多&#xff0c;如果你用的开发板跟我的不一样&#xff0c;请详细参照STM32规格书中说明对相关GPIO引脚进行配置。 先提前对本届内容的变成步骤进行总结如下&…

Breakpad交叉编译aarch64

原本是在mac os上编译的&#xff0c;但是会出现一些问题&#xff0c;因此还是开了台linux容器进行编译&#xff0c;本文可结合之前的linux下编译breakpad共同查看。 Linux下Breakpad编译_Edward.W的博客-CSDN博客https://blog.csdn.net/u013379032/article/details/130754480?…

day3 牛客TOP100:BM 21-30 二分法 二叉树

文章目录 二分法BM21 旋转数组的最小数字BM22 比较版本号力扣-旋转数组的查找力扣-两个非空链表逆序相加 二叉树BM23 二叉树的前序遍历BM24 二叉树的中序遍历BM25 二叉树的后序遍历BM26 求二叉树的层序遍历BM27 按之字形顺序打印二叉树BM28 二叉树的最大深度BM29 二叉树中和为某…

无涯教程-Android - Frame Layout函数

Frame Layout 旨在遮挡屏幕上的某个区域以显示单个项目&#xff0c;通常&#xff0c;应使用FrameLayout来保存单个子视图&#xff0c;因为在子视图彼此不重叠的情况下&#xff0c;难以以可扩展到不同屏幕尺寸的方式组织子视图。 不过&#xff0c;您可以使用android:layout_grav…

Unity——资产包(Asset Bundles)

对很多单机游戏来说&#xff0c;游戏的所有资源往往是与游戏本体一同发布的&#xff0c;资源部西药独立出来。但对于大型商业项目来说&#xff0c;游戏产品还需要再发布之后进行维护和更新&#xff0c;这就引出了Unity资产包的概念 一、资产包&#xff08;Asset Bundles&#x…

推荐几款常用测试数据自动生成工具(适用自动化测试、性能测试)

一、前言 在软件测试中&#xff0c;测试数据是测试用例的基础&#xff0c;对测试结果的准确性和全面性有着至关重要的影响。因此&#xff0c;在进行软件测试时&#xff0c;需要生成测试数据以满足测试场景和要求。本文将介绍如何利用测试数据生成工具来快速生成大量的测试数据…

【Windows打开OpenSSH服务端支持】

文章目录 概要整体架构流程技术细节1.安装OpenSSH服务端2.设置自启动3.启动服务4.资源监视器 修改配置防火墙小结 概要 项目需要装了一个Windows Server 2022&#xff0c;由于不能亲自到场调试&#xff0c;我就打开了OpenSSH服务支持&#xff0c;给有需要的小伙伴参考下。 整…

飞天使-python的分支结构,循环,函数

文章目录 分支结构单分支双分支多分支内联if条件语句案例&#xff0c;门票价格 循环for,in 循环for in 次数控制while 循环while遍历跳出循环break跳出循环continue 函数函数概念内置函数自定义函数函数进阶作用域 参考视频 分支结构 单分支 对事情判断&#xff0c;然后做出选…

08-Vue基础之组件

个人名片&#xff1a; &#x1f60a;作者简介&#xff1a;一名大二在校生 &#x1f921; 个人主页&#xff1a;坠入暮云间x &#x1f43c;座右铭&#xff1a;懒惰受到的惩罚不仅仅是自己的失败&#xff0c;还有别人的成功。 &#x1f385;**学习目标: 坚持每一次的学习打卡 文章…

搬家快递服务小程序的便利性

在当今快节奏的生活中&#xff0c;搬家可能是很多人都需要面对的问题。无论是新房子还是新办公室&#xff0c;都需要高效、便捷的搬家服务。本文将介绍如何使用第三方小程序制作平台&#xff0c;如乔拓云平台&#xff0c;开发一款高效便捷的搬家服务小程序。 1. 注册登录第三方…