深入了解Qt 控件:Display Widgets部件(1) 以及 QT自定义控件(电池)

news2024/11/26 9:37:52

QT自定义控件(电池)

  • 在线调色板
  • Qt之CSS专栏
  • Chapter1 QT自定义控件(电池)
  • Chapter2 Qt教程 — 3.5 深入了解Qt 控件:Display Widgets部件(1)
    • 1 Display Widgets简介
    • 2 如何使用Display Widgets部件
  • Chapter3 Qt自定义控件电池组件使用
    • 前言
    • 一、最基本的使用方法
    • 二、Battery 类的功能和 API
    • 三、Qt Desiner使用电池组件
    • 四、示例代码
  • Chapter4 Qt教程 — 3.6 深入了解Qt 控件:Display Widgets部件(2)
  • Chapter5 QT开发实例之常用控件(上)
    • 设置窗口属性
    • 字体形状窗体
  • Chapter6 用一个 QProgressBar 模拟手机电池充电
    • 1. 控件简介
    • 2. 用法示例
    • 3. 运行效果
  • Chapter7 Qt 常见的 QProgressBar 样式


在线调色板

https://www.sojson.com/web/panel.html

https://www.67tool.com/images/colorConvert

Qt之CSS专栏

https://blog.csdn.net/chenyijun/category_8772486.html

Chapter1 QT自定义控件(电池)

原文链接:https://blog.csdn.net/weixin_43676892/article/details/109451136

做一个电池控件,需要一个拖动条和一个进度条。
不多说,直接上代码
.h文件

#ifndef WIDGET_H
#define WIDGET_H

#include <QWidget>
#include <QProgressBar>
#include <QSlider>

class Widget : public QWidget
{
    Q_OBJECT

public:
    Widget(QWidget *parent = 0);
    ~Widget();

protected slots:
    void on_SliderValueChange();

private:
    QSlider *m_pSlider=nullptr;
    QProgressBar *m_batteryBar=nullptr;
};

#endif // WIDGET_H

.cpp文件

#include "widget.h"
#include <QVBoxLayout>
#include <QLabel>

Widget::Widget(QWidget *parent)
    : QWidget(parent)
{
    QWidget *batterytopwgt=new QWidget(this);
    QLabel *topLabel=new QLabel(this);
    topLabel->setStyleSheet("background:black");
    QVBoxLayout *topLayout=new QVBoxLayout(this);
    topLayout->addStretch();
    topLayout->addWidget(topLabel);
    topLayout->addStretch();
    topLayout->setMargin(0);
    batterytopwgt->setLayout(topLayout);


    QVBoxLayout *mainLayout=new QVBoxLayout(this);
    m_pSlider=new QSlider(Qt::Horizontal,this);   //将拖动条设置为横向
    m_pSlider->setRange(0,100);   //设置拖动条范围
    m_batteryBar=new QProgressBar(this);
    m_batteryBar->setRange(0,100);
    m_batteryBar->setFixedHeight(50);
    m_batteryBar->setFixedWidth(100);
    m_batteryBar->setStyleSheet("QProgressBar{border-radius:5px;border:2px solid grey;text-align:center}QProgressBar::chunk{border-radius:5px;background:green}");  //设置样式
    mainLayout->addWidget(m_batteryBar);
    mainLayout->addWidget(m_pSlider);
    mainLayout->setMargin(0);
    mainLayout->addStretch();
    this->setLayout(mainLayout);

    connect(m_pSlider,&QSlider::valueChanged,this,&Widget::on_SliderValueChange);   //拖动条每次值改变都会执行
}

Widget::~Widget()
{

}

void Widget::on_SliderValueChange()
{
    int sliderValue=m_pSlider->value();
    m_batteryBar->setValue(sliderValue);

    if(m_batteryBar->value()<=20)  //如果值小于20,则颜色为红色
    {
        m_batteryBar->setStyleSheet("QProgressBar{border-radius:5px;border:2px solid grey;text-align:center}QProgressBar::chunk{border-radius:5px;background:red}");
    }
    else  //大于20则值为绿色
    {
         m_batteryBar->setStyleSheet("QProgressBar{border-radius:5px;border:2px solid grey;text-align:center}QProgressBar::chunk{border-radius:5px;background:green}");
    }
}

main.cpp文件

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

int main(int argc, char *argv[])
{
    QApplication a(argc, argv);
    Widget w;
    w.show();

    return a.exec();
}

效果图:
在这里插入图片描述

这个我做的很简单,不过原理基本上是这样的。电池的样式可以根据自己喜好进行绘制。

样式表使用:

//如果值小于20,则颜色为红色
m_batteryBar->setStyleSheet("QProgressBar{border-radius:5px;border:2px solid grey;text-align:center}QProgressBar::chunk{border-radius:5px;background:red}");
//如果值大于20则值为绿色
m_batteryBar->setStyleSheet("QProgressBar{border-radius:5px;border:2px solid grey;text-align:center}QProgressBar::chunk{border-radius:5px;background:green}");

Chapter2 Qt教程 — 3.5 深入了解Qt 控件:Display Widgets部件(1)

原文链接:https://blog.csdn.net/qq_41921826/article/details/136871217

1 Display Widgets简介

Qt Designer 显示窗口部件提供的面板中,提供了 10 种显示小部件。以下是Display Widgets 的介绍:

Label(标签):QLabel 是用于显示文本或图片的简单控件。标签可以显示多行纯文本或富文本,还可以设置为响应用户的操作。

Text Browser(文本浏览器):QTextBrowser 是用于显示富文本文档的控件。这个部件可以显示来自本地文件或网络的HTML文档,并且可以解析HTML链接。

Graphics View(图形视图):QGraphicsView 是一个用于图形项(如线条、形状、图像等)交互的控件。它是基于场景(QGraphicsScene)和视图(QGraphicsView)框架的一部分,用于管理和显示复杂的图形界面。

Calendar Widget(日历):QCalendarWidget 继承 QWidget。QCalendarWidget 提供了一个月历视图,允许用户选择日期。这个控件显示一个一月的日历,用户可以浏览月份和年份。

LCD Number(液晶数字):QLCDNumber 继承 QFrame。QLCDNumber 控件显示一个带有液晶显示风格的数字。它常用于模拟液晶显示的计时器、计数器等。

Progress Bar(进度条):QProgressBar 继承 QWidget。QProgressBar 控件提供了一个水平或垂直的进度条。进度条可以用来显示任务的当前进度。

Horizontal Line(水平线)/ Vertical Line(垂直线):这些控件(QFrame)用于在用户界面中添加水平或垂直的分割线,通常用来分隔界面元素或区域。

OpenGL Widget(开放式图形库工具):QOpenGLWidget 提供了一个绘制 OpenGL 图形的控件。它可以用于集成 OpenGL 渲染管线到 Qt 应用程序中。

QQuick Widget(嵌入式 QML 工具):QQuickWidget 允许将基于 QML 的用户界面组件集成到 QWidget-based 应用程序中。这使得在传统的 Qt Widgets 应用中嵌入使用 QML 开发的现代、动态的用户界面成为可能。

2 如何使用Display Widgets部件

Chapter3 Qt自定义控件电池组件使用

原文链接:https://blog.csdn.net/m0_62599305/article/details/137993953

本文介绍了如何在Qt应用中使用Battery类创建自定义电池显示控件,包括基本用法、功能API(如设置电量、状态、颜色等)以及如何在QtDesigner中配置。通过示例代码展示了具体实现。

前言

Battery 类是一个自定义 Qt 控件,用于显示电池状态的图形化界面。通过 Battery 类,您可以轻松地在 Qt 应用程序中创建具有自定义外观的电池显示。下面我们将介绍如何使用 Battery 类以及其各种功能。

一、最基本的使用方法

首先,您需要在您的 Qt 项目中包含 Battery 类的头文件:

#include "Battery.h"

然后,您可以像使用任何其他 Qt 控件一样将 Battery 控件添加到您的 UI 中。例如,在您的 QMainWindow 或其他 QWidget 中添加一个 Battery 控件:

Battery *battery = new Battery(this);
battery->setGeometry(100, 100, 50, 20); // 设置电池控件的位置和大小
battery->setLevel(50); // 设置电量百分比为 50%
battery->setStatus(Battery::Discharging); // 设置电池状态为放电状态

这样,您就创建了一个基本的 Battery 控件,并设置了它的大小、位置、电量百分比和状态。

二、Battery 类的功能和 API

Battery 类提供了以下功能和 API:

设置和获取电量百分比:

  • void setLevel(int level):设置电池的电量百分比。

  • int level() const:获取电池的电量百分比。
    设置和获取电池状态:

  • void setStatus(BatteryStatus status):设置电池的状态,可以是放电、充电或充满状态。
    参数有下面的取值:
    在这里插入图片描述

  • BatteryStatus status() const:获取电池的当前状态。

设置和获取电池边框颜色:

  • void setBorderColor(const QColor &color):设置电池边框的颜色。

  • QColor borderColor() const:获取电池边框的颜色。

设置和获取电池内部填充颜色:

  • void setPaddingColor(const QColor &color):设置电池内部填充的颜色。

  • QColor paddingColor() const:获取电池内部填充的颜色。

设置和获取充电指示器颜色:

  • void setChargeColor(const QColor &color):设置充电指示器的颜色。

  • QColor chargeColor() const:获取充电指示器的颜色。

设置和获取低电量警告颜色:

  • void setLowBatteryColor(const QColor &color):设置低电量警告的颜色。

  • QColor lowBatteryColor() const:获取低电量警告的颜色。

设置和获取绘制偏移量:

  • void setOffset(const QPoint &offset):设置绘制偏移量,用于调整电量指示器的位置。

  • QPoint offset() const:获取绘制偏移量。

设置和获取电池外形是否为圆角:

  • void setRound(bool round):设置电池外形是否为圆角。

  • bool isRound() const:获取电池外形是否为圆角。

设置和获取圆角占电池高度的百分比:

  • void setRoundPresent(int roundPresent):设置圆角占电池高度的百分比,用于控制圆角的大小。

  • int roundPresent() const:获取圆角占电池高度的百分比。

三、Qt Desiner使用电池组件

在desiner选择电池组件:
在这里插入图片描述

在这里可以设置我们的一些属性,实现我们上面函数的功能
在这里插入图片描述

四、示例代码

下面是一个示例代码,演示了如何创建一个 Battery 控件并设置其各种属性:

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

int main(int argc, char *argv[])
{
    QApplication a(argc, argv);

    // 创建主窗口
    QWidget mainWindow;
    mainWindow.setGeometry(100, 100, 300, 200);

    // 创建一个 Battery 控件
    Battery *battery = new Battery(&mainWindow);
    battery->setGeometry(50, 50, 100, 40);
    battery->setLevel(75); // 设置电量百分比为 75%
    battery->setStatus(Battery::Charging); // 设置电池状态为充电状态

    mainWindow.show();

    return a.exec();
}

通过以上步骤,您可以轻松地在您的 Qt 应用程序中使用 Battery 类,并根据需要自定义电池的外观和行为。

Chapter4 Qt教程 — 3.6 深入了解Qt 控件:Display Widgets部件(2)

原文链接:https://blog.csdn.net/qq_41921826/article/details/136919332

Chapter5 QT开发实例之常用控件(上)

原文链接:https://blog.csdn.net/m0_53421868/article/details/127991232

设置窗口属性

为防止通过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;");
}

Chapter6 用一个 QProgressBar 模拟手机电池充电

原文链接:https://blog.csdn.net/lengyuefeng212/article/details/119804536

1. 控件简介

QProgressBar 继承 QWidget。QProgressBar 小部件提供了一个水平或垂直的进度条。进度条用于向用户显示操作的进度,并向他们确认应用程序仍在运行。

2. 用法示例

例 25_qprogressbar,手机电池充电。用一个 QProgressBar 模拟手机电池充电。

在新建例程中不要勾选“Generate form”,默认继承 QMainWindow 类即可。项目新建完成如下图。
在这里插入图片描述

本例已经添加一张电池的背景图资源图片。添加完成如下图。
在这里插入图片描述

在头文件“mainwindow.h”具体代码如下。

#ifndef MAINWINDOW_H
#define MAINWINDOW_H

#include <QMainWindow>
#include <QProgressBar>
#include <QTimer>

class MainWindow : public QMainWindow
{
Q_OBJECT

public:
MainWindow(QWidget *parent = nullptr);
~MainWindow();

private:
/* 声明对象 */
QProgressBar *progressBar;
QTimer *timer;

/* 用于设置当前 QProgressBar 的值 */
int value;

private slots:
/* 槽函数 */
void timerTimeOut();

};
#endif // MAINWINDOW_H

在源文件“mainwindow.cpp”具体代码如下。

#include "mainwindow.h"

MainWindow::MainWindow(QWidget *parent)
: QMainWindow(parent)
{
/* 设置主窗体位置与大小 */
this->setGeometry(0, 0, 800, 480);

progressBar = new QProgressBar(this);
progressBar->setGeometry(300, 200, 200, 60);

/*样式表设置,常用使用 setStyleSheet 来设置样式(实现界面美化的功能),
 * 具体可参考 styleSheet */
progressBar->setStyleSheet (
"QProgressBar{border:8px solid #FFFFFF;"
"height:30;"
"border-image:url(:/images/battery.png);" //背景图片
"text-align:center;" // 文字居中
"color:rgb(255,0,255);"
"font:20px;" // 字体大小为 20px
"border-radius:10px;}"
"QProgressBar::chunk{"
"border-radius:5px;" // 斑马线圆角
"border:1px solid black;" // 黑边,默认无边
"background-color:skyblue;"
"width:10px;margin:1px;}" // 宽度和间距
);

/* 设置 progressBar 的范围值 */
progressBar->setRange(0, 100);
/* 初始化 value 为 0 */
value = 0;
/* 给 progressBar 设置当前值 */
progressBar->setValue(value);
/* 设置当前文本字符串的显示格式 */
progressBar->setFormat("充电中%p%");

/* 定时器实例化设置每 100ms 发送一个 timeout 信号 */
timer = new QTimer(this);
timer->start(100);

/* 信号槽连接 */
connect(timer, SIGNAL(timeout()),this, SLOT(timerTimeOut()));
}

MainWindow::~MainWindow()
{
}

void MainWindow::timerTimeOut()
{
/* 定显示器时间到,value 值自加一 */
value ++;
progressBar->setValue(value);
/* 若 value 值大于 100,令 value 再回到 0 */
if(value>100)
value = 0;
}

在源文件“main.cpp”具体代码新建项目时生成,无改动。

3. 运行效果

程序编译运行的结果如下。程序运行后,可以看到在定时器的作用下,电池一直在充电,充到 100%,又重新回到 0%重新充电。QProgressBar 一般用于表示进度,常用于如复制进度,打开、加载进度等。
在这里插入图片描述

Chapter7 Qt 常见的 QProgressBar 样式

原文链接:https://blog.csdn.net/hellokandy/article/details/136328312

在很多场景中都会用到进度条,比如:文件拷贝过程,软件更新等。QProgressBar 的样式可以通过自绘或者qss方式实现,本文对常用的进度条样式进行了整理:

实际效果图
在这里插入图片描述

实现代码

void MainDialog::InitUI()
{
    //
    ui->progressbar_1->setStyleSheet("QProgressBar{text-align: center;"
                                     "background-color: #e2e3e4;"
                                     "border: 1px solid #999999;"
                                     "border-radius: 5px;}"
                                     "QProgressBar::chunk{background-color: #995fff;"
                                     "border-radius: 5px;}");

    //
    ui->progressbar_2->setStyleSheet("QProgressBar{text-align: center;"
                                     "background-color: #e2e3e4;"
                                     "border: 0px solid #e2e3e4;"
                                     "border-radius: 5px;}"
                                     "QProgressBar::chunk{background-color: #995fff; "
                                     "border-radius: 5px;}");

    //
    ui->progressbar_3->setStyleSheet("QProgressBar{text-align: center;"
                                     "background-color: #e2e3e4;"
                                     "border: 0px solid #e2e3e4;"
                                     "border-radius: 3px;}"
                                     "QProgressBar::chunk{background-color:#995fff;"
                                     "border-radius: 3px; "
                                     "width: 10px;"
                                     "margin: 0.5px;}");

    //
    ui->progressbar_4->setStyleSheet("QProgressBar{height:24px; "
                                     "text-align: center; "
                                     "font-size: 14px; "
                                     "color: white; "
                                     "border-radius: 5px; "
                                     "background: #e2e3e4;}"
                                     "QProgressBar::chunk{border-radius: 5px;"
                                     "background: qlineargradient(spread:pad, x1:0, y1:0, x2:1, y2:0,"
                                     "stop:0 #995fff,"
                                     "stop:1 #6900ff);}");

    //
    ui->progressbar_5->setStyleSheet("QProgressBar{height:24px; "
                                     "text-align: center; "
                                     "font-size: 14px; "
                                     "color: white; "
                                     "border-radius: 0px; "
                                     "background: #e2e3e4;}"
                                     "QProgressBar::chunk{border-radius: 0px;"
                                     "background: qlineargradient(spread:pad, x1:0, y1:0, x2:1, y2:0,"
                                     "stop:0 #995fff,"
                                     "stop:1 #6900ff);}");

}

void MainDialog::InitData()
{
    //设置进度值
    ui->progressbar_1->setValue(40);
    ui->progressbar_2->setValue(50);
    ui->progressbar_3->setValue(60);
    ui->progressbar_4->setValue(70);
    //如果最小值和最大值都设置为0,进度条会显示一个繁忙指示,而不会显示当前的值。
    ui->progressbar_5->setMaximum(0);
    ui->progressbar_5->setMinimum(0);
    //隐藏百分百文字
    ui->progressbar_4->setTextVisible(false);
}

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

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

相关文章

AIGC实战:LLaMA2打造中文写作利器——数据准备与模型训练全攻略

目录 一、下载并加载中文数据集二、中文数据集处理 1、数据格式 2、数据集处理之tokenizer训练格式 1&#xff09;先将一篇篇文本拼凑到一起&#xff08;只是简单的拼凑一起&#xff0c;用于训练tokenizer&#xff09; 2&#xff09;将数据集进行合并 3、数据集处理之模型&am…

新书速览|解密AI绘画与修图: Stable Diffusion+Photoshop

《解密AI绘画与修图&#xff1a; Stable DiffusionPhotoshop》 本书内容 《解密AI绘画与修图&#xff1a;Stable DiffusionPhotoshop》全面介绍了Photoshop和Stable Diffusion的交互方式&#xff0c;以及各自的AI功能和具体使用方法。除了讲解功能&#xff0c;还通过实际案例加…

浪潮信息存储的灵魂:平台化+场景化 全面释放数据价值

在数字化浪潮的席卷下&#xff0c;浪潮信息存储平台凭借卓越的性能和稳定性&#xff0c;正日益成为企业释放数据价值的重要力量。近日&#xff0c;浪潮信息出席了“2024数据基础设施技术峰会”&#xff0c;相关代表聚焦当前数据价值的释放话题&#xff0c;围绕先进存储基础设施…

Mongodb安装与配置

Mongodb的下载 这里下载的是MongoDB 7.0.11版本的 首先进入官网&#xff1a;https://www.mongodb.com/ 点击完上面两步后&#xff0c;加载来到该页面&#xff0c;选择自己的版本、系统&#xff0c;是压缩包(zip)还是安装包(msi)。 下载好之后能&#xff0c;来到安装包哪里&a…

爱奇艺 Opal 机器学习平台:特征中心建设实践

01 综述 Opal 是爱奇艺大数据团队研发的一站式机器学习平台&#xff0c;旨在提升特征迭代、模型训练效率&#xff0c;帮助业务提高收益。整个平台覆盖了机器学习生命周期中特征生产、样本构建、模型探索、模型训练、模型部署等在内的多个关键环节。其中特征作为模型训练的基石…

maven安装jar和pom到本地仓库

举例子我们要将 elastic-job-spring-boot-starter安装到本地的maven仓库&#xff0c;如下&#xff1a; <dependency><groupId>com.github.yinjihuan</groupId><artifactId>elastic-job-spring-boot-starter</artifactId><version>1.0.5&l…

基于SpringBoot网吧管理系统设计和实现(源码+LW+调试文档+讲解等)

&#x1f497;博主介绍&#xff1a;✌全网粉丝10W,CSDN作者、博客专家、全栈领域优质创作者&#xff0c;博客之星、平台优质作者、专注于Java、小程序技术领域和毕业项目实战✌&#x1f497; Java精品实战案例《600套》 2025-2026年最值得选择的Java毕业设计选题大全&#xff1…

TCP/IP模型原理(理论)

TCP/IP模型 1. 网络模型简介2. 应用层2.1 URL2.1.1 urlencode和urldecode 2.2 HTTP协议2.2.1 HTTP协议格式2.2.2 HTTP问题2.2.3 HTTPS 3 传输层3.1 端口号3.2 udp3.2.1 udp协议帧格式3.2.2 udp特点3.2.3 udp缓冲区3.2.4 注意 3.3 tcp协议3.3.1 tcp协议段格式3.3.2 确认应答机制…

计算机组成原理:海明校验

在上图中&#xff0c;对绿色的7比特数据进行海明校验&#xff0c;需要添加紫色的4比特校验位&#xff0c;总共是蓝色的11比特。紫色的校验位pi分布于蓝色的hi的1, 2, 4, 8, 16, 32, 64位&#xff0c;是2i-1位。绿色的数据位bi分布于剩下的位。 在下图中&#xff0c;b1位于h3&a…

如何借助ai(文心一言)获取tushare的数据

1. 准备工作 确保已安装python &#xff0c;安装Tushare库 和文心一言的地址&#xff08;文心一言&#xff09;&#xff1a; 注册Tushare账号并获取Token&#xff1a;在Tushare官方网站注册账号&#xff0c;并获取个人Token。如下 tushare地址&#xff1a;&#xff08;点击即…

音视频开发32 FFmpeg 编码- 视频编码 h264 参数相关

1. ffmpeg -h 这个命令总不会忘记&#xff0c;用这个先将ffmpeg所有的help信息都list出来 C:\Users\Administrator>ffmpeg -h ffmpeg version 6.0-full_build-www.gyan.dev Copyright (c) 2000-2023 the FFmpeg developersbuilt with gcc 12.2.0 (Rev10, Built by MSYS2 pro…

如何恢复已删除的 JPG/JPEG 图片文件

您是否意外丢失或删除了 JPG 或 JPEG 照片&#xff1f;幸运的是&#xff0c;您可以使用照片恢复工具找回它们。立即获取 JPEG 恢复工具 - PC 版照片恢复&#xff1a; 照片是捕捉和重温生活中特殊时刻的最佳方式。因此&#xff0c;当我们因硬盘崩溃、意外格式化磁盘或错误删除图…

Element UI搭建使用过程

本章内容基于上一篇---Vue-cli搭建项目基础版 Vue-cli搭建项目----基础版-CSDN博客 官网地址:Element - The worlds most popular Vue UI framework 介绍:完全基于Vue.js ,用于快速搭建用户界面. 第一步:安装ElementUI 在终端输入 npm i element-ui -S 在main.js输入 …

SpringMVC启动流程

文章目录 引文HandlerHandlerMapperHandlerAdapterRequestMapping方法参数解析RequestMapping方法返回值解析文件上传流程拦截器解析 SpringMVC启动流程如下 引文 我们在使用SpringMVC时&#xff0c;传统的方式是在webapp目录下定义一个web.xml文件&#xff0c;比如&#xff1a…

无忧易售新功能:一键白底转换,升级产品图片质感

在电商领域不断追求卓越与效率的今天&#xff0c;无忧易售ERP推出一键白底转换功能&#xff0c;为卖家们提供前所未有的便捷与高效&#xff0c;改变了商品图片处理的传统模式&#xff0c;革新了卖家们的图片处理体验&#xff0c;让商品展示焕然一新&#xff0c;助力商家在激烈的…

点云入门知识

点云的处理任务 场景语义分割 物体的三维表达方法&#xff08;3D representations&#xff09;&#xff1a; 点云&#xff1a;是由物体表面上许多点数据来表征这个物体。最接近原始传感器数据&#xff0c;且具有丰富的几何信息。 Mesh&#xff1a;用三角形面片和正方形面片拼…

计算机人说学校-北京理工大学-计算机方向

1. 专长、特点、特色 北京理工大学&#xff08;北理工&#xff09;的计算机专业同样具有显著的优势和特点&#xff1a; 学术水平高&#xff1a;作为一所985高校&#xff0c;北理工在计算机科学与技术以及人工智能领域都有着较高的学术水平和教学资源。研究方向广泛&#xff1…

阿里云服务器数据库迁云: 数据从传统到云端的安全之旅(WordPress个人博客实战教学)

&#x1f3ac; 鸽芷咕&#xff1a;个人主页 &#x1f525; 个人专栏: 《C干货基地》《粉丝福利》 ⛺️生活的理想&#xff0c;就是为了理想的生活! 文章目录 一、 开始实战1.2创建实验资源1.3重置云服务器ECS的登录密码&#xff08;请记住密码&#xff09;1.4 设置安全组端口1…

akamai指纹自由

最近项目的部分业务设计到了akamai的技术。也是第一次接触&#xff0c;于是网上搜了一下&#xff0c;相关的帖子和文章很多&#xff0c;在前人共享的资料的基础上&#xff0c;自己这几天终于完全弄通了。 先上结果 akmai的针对策略就2个&#xff0c;第一个是tls验证&#xff0…

【ElementPlus源码】Container 布局容器

文章目录 index.tsContainerheaderutilswithInstallwithNoopInstall hooksuseNamespace 单元测试 看源码时候做的笔记。如有错误请指出&#xff01; 关于路径的省略&#xff0c;详见button&#xff1a;【ElementPlus源码】Button按钮-CSDN博客 index.ts 导入一堆组件&#xff…