收集整理了一份《2024年最新物联网嵌入式全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升的朋友。
需要这些体系化资料的朋友,可以加我V获取:vip1024c (备注嵌入式)
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人
都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
设置窗口属性
为防止通过setWindowTitle 设置的窗口标题出现中文乱码的问题,需要将设置的参数进行一个转换,可以通过fromLocal8Bit 函数转换后就不会出现中文乱码的问题了。
learn::learn(QWidget \*parent)
: QMainWindow(parent)
, bnt(nullptr)
{
ui.setupUi(this);
QString iconpath = "../Resource Files/WIN\_20221114\_17\_56\_03\_Pro.jpg";
//设置窗口标题
setWindowTitle(QString::fromLocal8Bit("QT5.1窗口"));
//设置窗口固定大小
setMinimumSize(300, 300);
setMaximumSize(300, 300);
//设置窗口的背景颜色为红色
this->setStyleSheet("background:red");
//修改窗口的图标
this->setWindowIcon(QIcon(iconpath));
}
字体形状窗体
将窗体背景色透明,根据图片形状显示窗体
void learn::SetLucency()
{
//去掉标题栏
this->setWindowFlags(Qt::FramelessWindowHint);
//设置透明
this->setAttribute(Qt::WA_TranslucentBackground, true);
/\*
qss语句解释:
background-image :背景图片
url(xxx) 填写文件路径
background-repeat:no-repeat; 不平铺
\*/
this->setStyleSheet("background-image:url(C:/Users/26961/Desktop/1.png); background-repeat:no-repeat;");
}
QPushButton 按钮
在窗体中创建按钮 A,点击按钮 A,改变文字为按钮 B。
#pragma once
#include <QtWidgets/QMainWindow>
#include "ui\_learn.h"
#include <QPushButton>
#include <qtimer.h>
#include <qpoint.h>
#include <QDebug>
#include <QMouseEvent>
class learn : public QMainWindow
{
Q_OBJECT
public:
learn(QWidget \*parent = nullptr);
~learn();
// 按钮移动
void MovePushButton();
//鼠标点击
void PressMouseEvent(QMouseEvent\* e);
//鼠标松开
void ReleaseMouseEvent(QMouseEvent\* e);
//鼠标移动
void MoveMouseEvent(QMouseEvent\* e);
//设置透明
void SetLucency();
//修改按钮
void ChangeButtonText();
private:
Ui::learnClass ui;
QPushButton\* bnt;
QPoint last; //记录鼠标最近一次的坐标点
};
void learn::ChangeButtonText()
{
if (!bnt)
{
delete bnt;
bnt = nullptr;
}
bnt = new QPushButton(QString::fromLocal8Bit("修改文本"), this);
//设置按钮的原点和宽高
bnt->setGeometry(QRect(100, 100, 100, 25));
//注册按钮处理事件
connect(bnt, &QPushButton::clicked, this, [=]()
{
bnt->setText(QString::fromLocal8Bit("按钮已经修改"));
});
}
QLabel
在窗体中创建 QLabel 标签显示“我是 QLabel”字样,红色加粗倾斜字体。
void learn::ChangeLabel()
{
if (!label)
{
delete label;
label = nullptr;
}
//指定父对象, 设置Qlable文本
this->label = new QLabel(QString::fromLocal8Bit("我是QLabel"), this);
this->setGeometry(QRect(100, 100, 100, 25));
/\*
font-size:20px 字体大小
color:red 设置颜色
font-weight:bold 字宽
font-style:italic 字体样式
\*/
//设置Qlable qss样式
label->setStyleSheet("font-size:20px; font-weight:bold; font-style:italic");
}
QLineEdit 单行文本
对输入的密码会进行一个隐藏设置
void learn::ChangeLineEdit()
{
if (!line)
{
delete line;
line = nullptr;
}
this->line = new QLineEdit(this);
//设置单行坐标和宽高
line->setGeometry(QRect(100, 100, 300, 25));
//设置单行文本样式
line->setStyleSheet("font-size:20px; font-weight:bold; font-style:italic");
//限制最大长度为12
line->setMaxLength(12);
//不可写设置
//line->setEchoMode(QLineEdit::NoEcho);
//对密码进行隐藏设置
line->setEchoMode(QLineEdit::Password);
}
QComboBox 下拉列表框
void learn::AddCharActer()
{
if (this->box) {
delete box;
box = nullptr;
}
box = new QComboBox(this);
box->setGeometry(QRect(100, 100, 300, 25));
QStringList str;
str << QString::fromLocal8Bit("数学")
<< QString::fromLocal8Bit("语文")
<< QString::fromLocal8Bit("地理");
box->addItems(str);
}
QFontComboBox 字体下拉列表框
void learn::AddFontComboBox()
{
//创建字体下拉列表
fontbox = new QFontComboBox(this);
fontbox->setGeometry(QRect(100, 125, 300, 25));
bnt = new QPushButton(QString::fromLocal8Bit("选择"), this);
bnt->setGeometry(QRect(100, 100, 300, 25));
line = new QLineEdit(this);
line->setGeometry(QRect(100, 150, 300, 25));
connect(bnt, &QPushButton::clicked, this, [=]()
{
//当选择按钮被点击时,自动更换line 的信息
line->setText(fontbox->currentText());
});
}
QSpinBox 控件
void learn::AddSpinBox()
{
spin = new QSpinBox(this);
spin->setGeometry(QRect(100, 125, 300, 25));
//设置取值范围
spin->setRange(0,100);
//设置初始值
spin->setValue(0);
//除了初始值这些可以被修改,除此之外所有的文本都不允许被修改
//后缀
spin->setSuffix(QString::fromLocal8Bit("元/斤"));
//前缀
spin->setPrefix(QString::fromLocal8Bit("苹果"));
}
QTimeEdit 时间控件
void learn::AddTimeEdit()
{
time = new QTimeEdit(this);
time->setGeometry(QRect(100, 125, 300, 25));
**收集整理了一份《2024年最新物联网嵌入式全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升的朋友。**
![img](https://img-blog.csdnimg.cn/img_convert/b747ef596f87c7995ce658de7d866910.png)
![img](https://img-blog.csdnimg.cn/img_convert/afe910214af94ca579bb2748777d5045.png)
**[如果你需要这些资料,可以戳这里获取](https://bbs.csdn.net/topics/618679757)**
**需要这些体系化资料的朋友,可以加我V获取:vip1024c (备注嵌入式)**
**一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人**
**都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!**
[外链图片转存中...(img-dhAXq9vU-1715899684890)]
[外链图片转存中...(img-vT5Jcfai-1715899684890)]
**[如果你需要这些资料,可以戳这里获取](https://bbs.csdn.net/topics/618679757)**
**需要这些体系化资料的朋友,可以加我V获取:vip1024c (备注嵌入式)**
**一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人**
**都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!**