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

Windows图形界面(GUI)-QT-C/C++ - QT 对话窗口

  • 公开视频 -> 链接点击跳转公开课程
  • 博客首页 -> ​​​链接点击跳转博客主页

目录

模态对话框

非模态对话框

文件对话框

基本概念

静态函数

常见属性

颜色对话框

基本概念

静态函数

常见属性

字体对话框

基本概念

静态函数

常见属性

输入对话框

基本概念

静态函数

消息对话框

基本概念

静态函数


  • 模态对话框

    • 模态对话框是指在打开后,用户必须与该对话框交互并关闭它,才能返回到主窗口或其他窗口进行操作。在模态对话框打开期间,主窗口和其他窗口都不可用。

    • 模态对话框通常用于需要用户立即处理的情况,如确认对话框、错误提示、设置窗口等。

    • 在 Qt 中,可以通过 QDialog 类实现模态对话框。你可以使用 exec() 方法来显示模态对话框。

void MainWindow::on_pushButton_clicked()
{QDialog dlg(this);QPushButton* btn = new QPushButton("on_pushButton_clicked", &dlg);dlg.exec();
}void MainWindow::on_pushButton_3_clicked()
{Dialog1 dlg(this);dlg.exec();
}

  • 非模态对话框

    • 非模态对话框是指在打开后,用户可以自由地与主窗口或其他窗口交互,而不必首先关闭该对话框。

    • 非模态对话框适用于不需要立即处理的情况,如工具窗口、搜索窗口等。

    • 在 Qt 中,可以通过 QDialog 类实现非模态对话框。你可以使用 show() 方法来显示非模态对话框。

void MainWindow::on_pushButton_2_clicked()
{QDialog* dlg = new QDialog(this);dlg->setAttribute(Qt::WA_DeleteOnClose);dlg->show();
}void MainWindow::on_pushButton_4_clicked()
{Dialog2* dlg = new Dialog2(this);dlg->show();
}

  • 文件对话框

  • 基本概念

    • QFileDialog:一个用于选择文件或目录的对话框。

    • 静态函数:QFileDialog 提供了一些静态函数,可以快速创建和显示文件对话框。

    • 模式:文件对话框可以是模态的(阻塞父窗口)或非模态的(不阻塞父窗口)。

  • 静态函数

    • getOpenFileName:选择一个文件进行打开。

    • getSaveFileName:选择一个文件进行保存。

    • getExistingDirectory:选择一个目录。

    • getOpenFileNames:选择多个文件进行打开。

  • 常见属性

    • setWindowTitle:设置对话框的标题。

    • setDirectory:设置对话框的初始目录。

    • setNameFilter:设置文件过滤器。

    • setFileMode:设置文件模式(例如,选择单个文件、多个文件、目录等)。

    • setOption:设置对话框的选项(例如,显示隐藏文件、不解析符号链接等)。

  • getOpenFileName用于选择一个文件进行打开。

    • 函数原型

      QString QFileDialog::getOpenFileName(QWidget *parent = nullptr,const QString &caption = QString(),const QString &dir = QString(),const QString &filter = QString(),QString *selectedFilter = nullptr,Options options = Options()
      )
    • 参数说明

      • parent:父窗口,用于模态对话框的父窗口。

      • caption:对话框的标题。

      • dir:初始目录。

      • filter:文件过滤器,例如 "Images (*.png *.xpm *.jpg);;Text files (*.txt)"

      • selectedFilter:选中的过滤器。

      • options:对话框选项,例如 QFileDialog::ReadOnly

    • 示例代码

      • void MainWindow::on_pushButton_5_clicked()
        {QString fileName = QFileDialog::getOpenFileName(this,"Open File","D:\\Debug","Image(*.bmp *.png);;text(*.txt);;allfiles(*.*)",NULL,QFileDialog::ReadOnly);qDebug() << fileName;
        }
  • getSaveFileName用于选择一个文件进行保存。

    • 函数原型

      QString QFileDialog::getSaveFileName(QWidget *parent = nullptr,const QString &caption = QString(),const QString &dir = QString(),const QString &filter = QString(),QString *selectedFilter = nullptr,Options options = Options()
      )
    • 参数说明

      • parent:父窗口,用于模态对话框的父窗口。

      • caption:对话框的标题。

      • dir:初始目录。

      • filter:文件过滤器,例如 "Images (*.png *.xpm *.jpg);;Text files (*.txt)"

      • selectedFilter:选中的过滤器。

      • options:对话框选项,例如 QFileDialog::ReadOnly

    • 示例代码


void MainWindow::on_pushButton_7_clicked()
{QString fileName = QFileDialog::getSaveFileName(this,"Save File","D:\\Debug","Image(*.bmp *.png);;text(*.txt);;allfiles(*.*)",NULL,QFileDialog::ReadOnly);qDebug() << fileName;
}
  • getExistingDirectory用于选择一个目录。

    • 函数原型

      QString QFileDialog::getExistingDirectory(QWidget *parent = nullptr,const QString &caption = QString(),const QString &dir = QString(),Options options = ShowDirsOnly
      )
    • 参数说明

      • parent:父窗口,用于模态对话框的父窗口。

      • caption:对话框的标题。

      • dir:初始目录。

      • options:对话框选项,例如 QFileDialog::ShowDirsOnly

    • 示例代码

void MainWindow::on_pushButton_8_clicked()
{QString dir = QFileDialog::getExistingDirectory(this,"Open Directory","D:\\Debug",QFileDialog::ShowDirsOnly | QFileDialog::DontResolveSymlinks);qDebug() << dir;
}
  • getOpenFileNames用于选择多个文件进行打开。

    • 函数原型

      QStringList QFileDialog::getOpenFileNames(QWidget *parent = nullptr,const QString &caption = QString(),const QString &dir = QString(),const QString &filter = QString(),QString *selectedFilter = nullptr,Options options = Options()
      )
    • 参数说明

      • parent:父窗口,用于模态对话框的父窗口。

      • caption:对话框的标题。

      • dir:初始目录。

      • filter:文件过滤器,例如 "Images (*.png *.xpm *.jpg);;Text files (*.txt)"

      • selectedFilter:选中的过滤器。

      • options:对话框选项,例如 QFileDialog::ReadOnly

    • 示例代码

void MainWindow::on_pushButton_6_clicked()
{QStringList fileName = QFileDialog::getOpenFileNames(this,"Open Files","D:\\Debug","Image(*.bmp *.png);;text(*.txt);;allfiles(*.*)",NULL,QFileDialog::ReadOnly);qDebug() << fileName;
}

 

  • 颜色对话框

  • 基本概念

    • QColorDialog:一个用于选择颜色的对话框。

    • 静态函数:QColorDialog 提供了一些静态函数,可以快速创建和显示颜色对话框。

    • 模式:颜色对话框可以是模态的(阻塞父窗口)或非模态的(不阻塞父窗口)。

  • 静态函数

    • getColor:选择一个颜色。
  • 常见属性

    • setWindowTitle:设置对话框的标题。

    • setCurrentColor:设置初始颜色。

    • currentColor:获取当前选中的颜色。

  • getColor 函数获取颜色

    • 函数原型

      QColor QColorDialog::getColor(const QColor &initial = Qt::white,QWidget *parent = nullptr,const QString &title = QString(),ColorDialogOptions options = ColorDialogOptions()
      )
    • 参数说明

      • initial:初始颜色。默认为 Qt::white

      • parent:父窗口,用于模态对话框的父窗口。

      • title:对话框的标题。默认为空字符串。

      • options:对话框选项。可以是 QColorDialog::ShowAlphaChannel 或其他选项的组合。

    • 示例代码


void MainWindow::on_pushButton_9_clicked()
{QColor color = QColorDialog::getColor(Qt::white, this, "Select Color");if(color.isValid()){ui->pushButton_9->setStyleSheet("color:" + color.name() + ";");qDebug() << color.name();}}

 

  • 字体对话框

  • 基本概念

    • QFontDialog:一个用于选择字体的对话框。

    • 静态函数:QFontDialog 提供了一些静态函数,可以快速创建和显示字体对话框。

    • 模式:字体对话框可以是模态的(阻塞父窗口)或非模态的(不阻塞父窗口)。

  • 静态函数

    • getFont:选择一个字体。
  • 常见属性

    • setWindowTitle:设置对话框的标题。

    • setCurrentFont:设置初始字体。

    • currentFont:获取当前选中的字体。

  • getFont:选择一个字体。

    • 函数原型

      QFont QFontDialog::getFont(bool *ok,const QFont &initial = QFont(),QWidget *parent = nullptr,const QString &title = QString(),FontDialogOptions options = FontDialogOptions()
      )
    • 参数说明

      • ok:一个布尔指针,用于指示用户是否确认了选择。如果用户确认了选择,*ok 将被设置为 true,否则为 false

      • initial:初始字体。默认为空字体(QFont())。

      • parent:父窗口,用于模态对话框的父窗口。

      • title:对话框的标题。默认为空字符串。

      • options:对话框选项。可以是 QFontDialog::NoButtons 或其他选项的组合。

    • 示例代码


void MainWindow::on_pushButton_10_clicked()
{bool ok;QFont font = QFontDialog::getFont(&ok,QFont("Helvetica [Cronyx]", 10),this,"Select Font");if(ok){ui->pushButton_10->setFont(font);qDebug() << font.family();}}

  • 输入对话框

  • 基本概念

    • QInputDialog:一个用于获取用户输入的对话框。

    • 输入类型:可以输入的类型包括字符串(text)、整数(int)、浮点数(double)等。

  • 静态函数

    • getText:获取字符串输入。

    • 函数原型

      QString QInputDialog::getText(QWidget *parent, const QString &title, const QString &label, QLineEdit::EchoMode mode = QLineEdit::Normal, const QString &text = QString(), bool *ok = nullptr,Qt::WindowFlags flags = Qt::WindowFlags()
      )
    • 参数说明

      • parent:父窗口指针,用于模态对话框的父窗口。

      • title:对话框的标题。

      • label:对话框中显示的标签文本。

      • mode:输入框的回显模式,例如普通模式(QLineEdit::Normal)或密码模式(QLineEdit::Password)。

      • text:输入框的初始文本。

      • ok:布尔指针,用于指示用户是否确认了输入。如果用户确认了输入,*ok 将被设置为 true,否则为 false

      • flags:窗口标志,用于设置对话框的外观和行为。

  • getInt:获取整数输入。

int QInputDialog::getInt(QWidget *parent, const QString &title, const QString &label, int value = 0, int min = -2147483647, int max = 2147483647, int step = 1, bool *ok = nullptr, Qt::WindowFlags flags = Qt::WindowFlags()
)
  • 参数说明

    • parent:父窗口指针,用于模态对话框的父窗口。

    • title:对话框的标题。

    • label:对话框中显示的标签文本。

    • value:输入框的初始值。

    • min:输入的最小值。

    • max:输入的最大值。

    • step:输入框的步长。

    • ok:布尔指针,用于指示用户是否确认了输入。如果用户确认了输入,*ok 将被设置为 true,否则为 false

    • flags:窗口标志,用于设置对话框的外观和行为。

  • getDouble:获取浮点数输入。

    • 函数原型

      • double QInputDialog::getDouble(QWidget *parent, const QString &title, const QString &label, double value = 0, double min = -2147483647, double max = 2147483647, int decimals = 1, bool *ok = nullptr, Qt::WindowFlags flags = Qt::WindowFlags()
        )
    • 参数说明

      • parent:父窗口指针,用于模态对话框的父窗口。

      • title:对话框的标题。

      • label:对话框中显示的标签文本。

      • value:输入框的初始值。

      • min:输入的最小值。

      • max:输入的最大值。

      • decimals:输入框的小数位数。

      • ok:布尔指针,用于指示用户是否确认了输入。如果用户确认了输入,*ok 将被设置为 true,否则为 false

      • flags:窗口标志,用于设置对话框的外观和行为。

    • getItem:从一个项目列表中获取选择。

      • 函数原型

        QString QInputDialog::getItem(
        QWidget *parent, 
        const QString &title, 
        const QString &label, 
        const QStringList &items, 
        int current = 0, 
        bool editable = true, 
        bool *ok = nullptr, 
        Qt::WindowFlags flags = Qt::WindowFlags()
        )
        
      • 参数说明

        • parent:父窗口指针,用于模态对话框的父窗口。

        • title:对话框的标题。

        • label:对话框中显示的标签文本。

        • items:项目列表,用户可以从中选择。

        • current:初始选中的项目索引。

        • editable:是否允许用户输入自定义文本。

        • ok:布尔指针,用于指示用户是否确认了输入。如果用户确认了输入,*ok 将被设置为 true,否则为 false

        • flags:窗口标志,用于设置对话框的外观和行为。

      • 示例代码
      • void MainWindow::on_pushButton_11_clicked()
        {bool ok;QString text = QInputDialog::getText(this,"input dialog","please input your name:",QLineEdit::Normal,"0xCC",&ok );if(ok && !text.isEmpty()){qDebug() << text;}}void MainWindow::on_pushButton_12_clicked()
        {bool ok;int value = QInputDialog::getInt(this,"input dialog","please input your age:",18,0,120,1,&ok);if(ok) qDebug() << value;
        }void MainWindow::on_pushButton_13_clicked()
        {bool ok;QStringList items;items << "apple" << "banana";QString item = QInputDialog::getItem(this,"input dialog","please select a fruit",items,1,false,&ok);if(ok) qDebug() << item;
        }
        

  • 消息对话框

  • 基本概念

    • QMessageBox:一个用于显示消息的对话框。

    • 消息类型:包括信息(Information)、警告(Warning)、错误(Critical)、询问(Question)等。

  • 静态函数

    • information:显示信息消息。

    • 函数原型

      int QMessageBox::information(QWidget *parent, const QString &title, const QString &text, int button0, int button1 = 0, int button2 = 0
      )
    • warning:显示警告消息。

    • 函数原型

      int QMessageBox::warning(
      QWidget *parent, 
      const QString &title, 
      const QString &text, 
      int button0, 
      int button1 = 0, 
      int button2 = 0
      )
      
  • critical:显示错误消息。

  • 函数原型

    int QMessageBox::critical(
    QWidget *parent, 
    const QString &title, 
    const QString &text, 
    int button0, 
    int button1 = 0, 
    int button2 = 0
    )
    
  • question:显示询问消息。

  • 函数原型

    int QMessageBox::question(
    QWidget *parent, 
    const QString &title, 
    const QString &text, 
    int button0, 
    int button1 = 0, 
    int button2 = 0
    )
    
  • 参数说明

    • parent:父窗口指针,用于模态对话框的父窗口,可以是 nullptr 表示没有父窗口。

    • title:对话框的标题。

    • text:对话框中显示的主要消息文本。

    • button0:对话框中的第一个按钮,使用 QMessageBox::StandardButton 枚举值。

    • button1:对话框中的第二个按钮(可选),使用 QMessageBox::StandardButton 枚举值。

    • button2:对话框中的第三个按钮(可选),使用 QMessageBox::StandardButton 枚举值。

  • 示例代码

    • void MainWindow::on_pushButton_14_clicked()
      {QMessageBox::information(this, "information", "This is a information message", QMessageBox::Ok);
      }void MainWindow::on_pushButton_15_clicked()
      {QMessageBox::warning(this, "warning", "This is a warning message");
      }void MainWindow::on_pushButton_16_clicked()
      {QMessageBox::critical(this, "critical", "This is a critical message");
      }void MainWindow::on_pushButton_17_clicked()
      {int ret = QMessageBox::question(this, "question", "Are you want to continue?");if(ret == QMessageBox::Yes){QMessageBox::information(this, "information", "your chose yes");}else{QMessageBox::information(this, "information", "your chose no");}
      }

 

相关文章:

Windows图形界面(GUI)-QT-C/C++ - QT 对话窗口

公开视频 -> 链接点击跳转公开课程博客首页 -> ​​​链接点击跳转博客主页 目录 模态对话框 非模态对话框 文件对话框 基本概念 静态函数 常见属性 颜色对话框 基本概念 静态函数 常见属性 字体对话框 基本概念 静态函数 常见属性 输入对话框 基本概念 …...

Java语言的数据结构

Java语言中的数据结构 引言 在计算机科学中&#xff0c;数据结构是指一种特定的方式来组织和存储数据&#xff0c;以便能够高效地进行访问和修改。Java作为一种广泛使用的编程语言&#xff0c;其内置的数据结构和集合框架为程序员提供了便利的工具来管理数据。本文将深入探讨…...

【12】Word:张老师学术论文❗

目录 题目 ​NO2 NO3 NO4 NO5 NO6 NO7.8 题目 NO2 布局→页面设置→纸张&#xff1a;A4→页边距&#xff1a;上下左右边距→文档网格&#xff1a;只指定行网格→版式&#xff1a;页眉和页脚&#xff1a;页脚距边界&#xff1a;1.4cm居中设置论文页码&#xff1a;插入…...

大疆最新款无人机发布,可照亮百米之外目标

近日&#xff0c;DJI 大疆发布全新小型智能多光旗舰 DJI Matrice 4 系列&#xff0c;包含 Matrice 4T 和 Matrice 4E 两款机型。DJI Matrice 4E 价格为27888 元起&#xff0c;DJI Matrice 4T价格为38888元起。 图片来源&#xff1a;大疆官网 DJI Matrice 4E DJI Matrice 4T D…...

《小迪安全》学习笔记05

目录 读取&#xff1a; 写入&#xff1a; &#xff08;其中的读取和写入时我认为比较重要的&#xff0c;所以单独做成了目录&#xff0c;这里的读取和写入是指在进行sql注入的时候与本地文件进行的交互&#xff09; 好久没发博客了。。。从这篇开始的小迪安全学习笔记就开始…...

56_多级缓存实现

1.查询Tomcat 拿到商品id后,本应去缓存中查询商品信息,不过目前我们还未建立Nginx、Redis缓存。因此,这里我们先根据商品id去Tomcat查询商品信息。此时商品查询功能的架构如下图所示。 需要注意的是,我们的OpenResty是在虚拟机,Tomcat是在macOS系统(或Windows系统)上,…...

每日进步一点点(网安)

今日练习题目是PHP反序列化&#xff0c;也学习一下说明是序列化和反序列化 1.PHP序列化 序列化是指将数据结构或对象转换为可传输或可储存的格式的过程。这通常需要将数据转换为字节流或者其他编码格式&#xff0c;以便在不同系统和应用程序之间进行传输或存储 在PHP中&…...

宝塔php7.4安装报错,无法安装,php8以上可以安装,以下的不行,gd库什么的都正常

宝塔的依赖问题导致的问题&#xff0c;最后手动挂载后才解决。。。废了三天三夜终于搞好了。。。。无语&#xff5e; 建议&#xff1a;不要一直升级宝塔版本&#xff0c;升级前备份或者开服务商的实例镜像&#xff0c;方便恢复&#xff0c;不然&#xff0c;可就GG了&#xff5…...

SDL2:PC端编译使用

SDL2&#xff1a;PC端编译使用 1. SDL2&#xff1a;PC端编译使用1.1 安装必要的依赖1.2 下载编译SDL21.3 SDL2使用示例&#xff1a;Audio1.4 运行示例程序 1. SDL2&#xff1a;PC端编译使用 1.1 安装必要的依赖 首先&#xff0c;确保安装了编译SDL2所需的依赖库&#xff1a; …...

Windows 蓝牙驱动开发-蓝牙设备栈

蓝牙设备栈 蓝牙驱动程序堆栈包含 Microsoft 为蓝牙协议提供支持的核心部分。 有了这个堆栈&#xff0c;已启用蓝牙的设备可以彼此定位并建立连接。 在此类连接中&#xff0c;设备可以通过各种应用程序交换数据并彼此交互。 下图显示了蓝牙驱动程序堆栈中的模块&#xff0c;以…...

docker一张图理解

1、push 将本地的镜像上传到镜像仓库,要先登陆到镜像仓库。参数说明&#xff1a; –disable-content-trust : 忽略镜像的校验,默认开启 # 上传本地镜像myapache:v1到镜像仓库中。 docker push myapache:v1 1.2、search 从Docker Hub查找镜像。参数说明&#xff1a; –…...

RocketMQ、Kafka、RabbitMQ,如何选型?

如何根据应用场景选择合适的消息中间件? 分布式、微服务、高并发架构中&#xff0c;消息队列&#xff08;Message Queue&#xff0c;简称MQ&#xff09;扮演着至关重要的角色。 消息队列用于实现系统间的异步通信、解耦、削峰填谷等功能。 目前常见的MQ实现包括RabbitMQ、Rock…...

RabbitMQ故障全解析:消费、消息及日常报错处理与集群修复

文章目录 前言&#xff1a;1 消费慢2 消息丢失3 消息重复消费4 日常报错及解决4.1 报错“error in config file “/etc/rabbitmq/rabbitmq.config” (none): no ending found”4.2 生产者发送消息报错4.3 浏览器打开IP地址&#xff0c;无法访问 RabbitMQ&#xff08;白屏没有结…...

无公网IP 实现外网访问本地 Docker 部署 Navidrome

Navidrome 是一款可以在 macOS、Linux、Windows以及 Docker 等平台上运行的跨平台开源音乐服务器应用&#xff0c;它支持传输常见的 MP3、FLAC、WAV等音频格式。允许用户通过 Web 界面或 API 进行音乐库的管理和访问。本文就介绍如何快速在 Linux 系统使用 Docker 进行本地部署…...

pnpm add 和 pnpm install 的区别?

文章目录 1. pnpm add2. pnpm install3. 总结应用场景示例 在使用 pnpm 管理项目依赖时&#xff0c; pnpm add 和 pnpm install 是两个常用的命令&#xff0c;但它们的功能和使用场景有所不同。以下是详细的解释&#xff1a; 1. pnpm add 功能&#xff1a;用于向项目的 pack…...

Linux:文件描述符fd、系统调用open

目录 一、文件基础认识 二、C语言操作文件的接口 1.> 和 >> 2.理解“当前路径” 三、相关系统调用 1.open 2.文件描述符 3.一切皆文件 4.再次理解重定向 一、文件基础认识 文件 内容 属性。换句话说&#xff0c;如果在电脑上新建了一个空白文档&#xff0…...

CPU负载与CPU使用率之区别

在日常的性能测试与系统监控中&#xff0c;CPU负载和CPU使用率是两个常见的指标&#xff0c;它们经常被提及&#xff0c;但也经常被混淆。本文将为你深入解析两者的区别&#xff0c;以及它们各自的意义和应用场景&#xff0c;让你更清楚地掌握这些关键性能指标。 存储、内存和 …...

C++实现设计模式---外观模式 (Facade)

外观模式 (Facade) 外观模式 是一种结构型设计模式&#xff0c;为子系统中的一组接口提供一个一致的界面。外观模式定义了一个更高层次的接口&#xff0c;使得子系统更容易使用。 意图 简化复杂子系统的接口。为客户端提供一个统一的入口&#xff0c;屏蔽子系统的内部细节。 …...

仿射密码实验——Python实现(完整解析版)

文章目录 前言实验内容实验操作步骤1.编写主程序2.编写加密模块3.编写解密模块4.编写文件加解密模块 实验结果实验心得实验源码scirpt.pyusefile.py 前言 实验目的 1&#xff09;初步了解古典密码 2&#xff09;掌握仿射密码的实现 实验方法 根据下图仿射密码&#xff08;变换…...

【Qt 常用控件】按钮类(QPushButton、QRadioButton、QCheckBox)

按钮控件继承自抽象类QAbstractButton。 抽象类不允许实例化对象&#xff0c;内部定义纯虚函数。只能通过子类继承&#xff0c;重写纯虚函数的方式使用。 1. QPushButton 1.1 QAbstractButton中和QPushButton相关的属性 text按钮显示文本icon按钮图标iconSize按钮图标尺寸s…...

零门槛NAS搭建:WinNAS如何让普通电脑秒变私有云?

一、核心优势&#xff1a;专为Windows用户设计的极简NAS WinNAS由深圳耘想存储科技开发&#xff0c;是一款收费低廉但功能全面的Windows NAS工具&#xff0c;主打“无学习成本部署” 。与其他NAS软件相比&#xff0c;其优势在于&#xff1a; 无需硬件改造&#xff1a;将任意W…...

多模态2025:技术路线“神仙打架”,视频生成冲上云霄

文&#xff5c;魏琳华 编&#xff5c;王一粟 一场大会&#xff0c;聚集了中国多模态大模型的“半壁江山”。 智源大会2025为期两天的论坛中&#xff0c;汇集了学界、创业公司和大厂等三方的热门选手&#xff0c;关于多模态的集中讨论达到了前所未有的热度。其中&#xff0c;…...

synchronized 学习

学习源&#xff1a; https://www.bilibili.com/video/BV1aJ411V763?spm_id_from333.788.videopod.episodes&vd_source32e1c41a9370911ab06d12fbc36c4ebc 1.应用场景 不超卖&#xff0c;也要考虑性能问题&#xff08;场景&#xff09; 2.常见面试问题&#xff1a; sync出…...

使用VSCode开发Django指南

使用VSCode开发Django指南 一、概述 Django 是一个高级 Python 框架&#xff0c;专为快速、安全和可扩展的 Web 开发而设计。Django 包含对 URL 路由、页面模板和数据处理的丰富支持。 本文将创建一个简单的 Django 应用&#xff0c;其中包含三个使用通用基本模板的页面。在此…...

java调用dll出现unsatisfiedLinkError以及JNA和JNI的区别

UnsatisfiedLinkError 在对接硬件设备中&#xff0c;我们会遇到使用 java 调用 dll文件 的情况&#xff0c;此时大概率出现UnsatisfiedLinkError链接错误&#xff0c;原因可能有如下几种 类名错误包名错误方法名参数错误使用 JNI 协议调用&#xff0c;结果 dll 未实现 JNI 协…...

STM32F4基本定时器使用和原理详解

STM32F4基本定时器使用和原理详解 前言如何确定定时器挂载在哪条时钟线上配置及使用方法参数配置PrescalerCounter ModeCounter Periodauto-reload preloadTrigger Event Selection 中断配置生成的代码及使用方法初始化代码基本定时器触发DCA或者ADC的代码讲解中断代码定时启动…...

学习STC51单片机31(芯片为STC89C52RCRC)OLED显示屏1

每日一言 生活的美好&#xff0c;总是藏在那些你咬牙坚持的日子里。 硬件&#xff1a;OLED 以后要用到OLED的时候找到这个文件 OLED的设备地址 SSD1306"SSD" 是品牌缩写&#xff0c;"1306" 是产品编号。 驱动 OLED 屏幕的 IIC 总线数据传输格式 示意图 …...

Linux云原生安全:零信任架构与机密计算

Linux云原生安全&#xff1a;零信任架构与机密计算 构建坚不可摧的云原生防御体系 引言&#xff1a;云原生安全的范式革命 随着云原生技术的普及&#xff0c;安全边界正在从传统的网络边界向工作负载内部转移。Gartner预测&#xff0c;到2025年&#xff0c;零信任架构将成为超…...

视频行为标注工具BehaviLabel(源码+使用介绍+Windows.Exe版本)

前言&#xff1a; 最近在做行为检测相关的模型&#xff0c;用的是时空图卷积网络&#xff08;STGCN&#xff09;&#xff0c;但原有kinetic-400数据集数据质量较低&#xff0c;需要进行细粒度的标注&#xff0c;同时粗略搜了下已有开源工具基本都集中于图像分割这块&#xff0c…...

在Mathematica中实现Newton-Raphson迭代的收敛时间算法(一般三次多项式)

考察一般的三次多项式&#xff0c;以r为参数&#xff1a; p[z_, r_] : z^3 (r - 1) z - r; roots[r_] : z /. Solve[p[z, r] 0, z]&#xff1b; 此多项式的根为&#xff1a; 尽管看起来这个多项式是特殊的&#xff0c;其实一般的三次多项式都是可以通过线性变换化为这个形式…...