Qt类 | QAbstractButton类详解

news2024/9/20 20:29:13

文章目录

  • 一、QAbstractButton类介绍
  • 二、Properties(属性)
  • 三、Public Functions(公共函数)
    • 1.构造函数
    • 2.autoExclusive与setAutoExclusive函数--获取/设置自动互斥状态
    • 3.autoRepeat与setAutoRepeat函数--获取/设置自动重复状态
    • 4.autoRepeatDelay与setAutoRepeatDelay函数--获取/设置自动重复的初始延迟时间
    • 5.autoRepeatInterval与setAutoRepeatInterval函数--获取/设置自动重复的间隔时间
    • 6.icon与setIcon函数--获取/设置按钮上显示的图标
    • 7.iconSize与setIconSize函数--获取/设置按钮的图标大小
    • 8.isCheckable与setCheckable函数--获取/设置按钮的可勾选状态
    • 9.isChecked与setChecked函数--获取/设置按钮的选中状态
    • 10.isDown与setDown函数--获取/设置按钮是否按下
    • 11.shortcut与setShortcut函数--获取/设置按钮的快捷键
    • 12.text与setText函数--获取/设置按钮上显示的文本
    • 13.group函数--获取按钮所属的按钮组
  • 四、Public Slots(公共槽函数)
    • 1.animateClick函数--模拟动画点击
    • 2.click函数--点击操作
    • 3.setChecked函数--设置按钮的选中状态
    • 4.setIconSize函数--设置按钮图标的大小
    • 5.toggle函数--切换按钮的选中状态
  • 五、Signals(信号)
    • 1.clicked
    • 2.pressed
    • 3.released
    • 4.toggled -- 按钮选中状态发生变化时发出
  • 六、Protected Functions(受保护的函数)
    • 1.checkStateSet函数
    • 2.hitButton函数
    • 3.nextCheckState函数
  • 七、Reimplemented Protected Functions(重写的受保护函数)

一、QAbstractButton类介绍

QAbstractButton类详解主要参考:https://doc.qt.io/qt-5/qabstractbutton.html

  QAbstractButton 类是按钮控件的抽象基类。这个类是QPushButton、QToolButton、QCheckBox和QRadioButton的基类。QAbstractButton为两种按钮提供支持:普通按钮和可勾选(切换)按钮。可勾选按钮在QRadioButton和QCheckBox类中实现。普通按钮在QPushButton和QToolButton类中实现。

  QAbstractButton 类定义了按钮共有的功能,如文本和图标显示、快捷键创建、状态反馈(如是否被按下、是否被选中、是否可用)以及自动重复点击等。

  • 文本和图标显示

    setText()设置文本;setIcon()设置图标。

    如果按钮被禁用,其标签会改变,以给出“禁用”的外观。

  • 快捷键创建

    shortcut()与setShortcut()函数

  • 是否被按下

    isDown()表示按钮是否被按下。

  • 是否被选中

    isChecked()表示按钮是否被选中。只有可勾选(切换)的按钮可以被选中和取消选中

    isDown()和isChecked()之间的区别如下:

      当用户点击切换按钮以选中它时,按钮首先被按下,然后释放到选中状态。当用户再次点击它(取消选中)时,按钮首先移动到按下状态,然后到未选中状态(isChecked()和isDown()都为false)

  • 是否可用

    isEnabled()表示用户是否可以按下按钮

  • 自动重复点击

    setAutoRepeat()设置按钮是否会在用户按住时自动重复。autoRepeatDelay和autoRepeatInterval定义了如何进行自动重复。

  • 设置按钮是可切换按钮还是普通按钮

    setCheckable()设置按钮是否为切换按钮

  要继承QAbstractButton,您必须至少重新实现paintEvent()来绘制按钮的轮廓和文本或光栅图。通常还建议重新实现sizeHint(),有时还需要重新实现hitButton()(以确定按钮按下是否在按钮内)。对于具有多于两个状态的按钮(如三态按钮),您还需要重新实现checkStateSet()和nextCheckState()。

使用方式:

Header:
#include <QAbstractButton> 
qmake:
QT += widgets

二、Properties(属性)

  • autoExclusive : bool — 是否启用了自动互斥

    • 属性描述

      这个属性用于控制按钮是否启用自动互斥。默认情况下,autoExclusive 对于大多数按钮是关闭的,但对于单选按钮(QRadioButton)默认是开启的,因为单选按钮天生就是互斥的。

      当自动互斥启用时,属于同一个父控件的可勾选按钮(例如 QRadioButton)将自动形成一个互斥组。在这个互斥组内,只能有一个按钮处于被选中状态,如果用户选中了另一个按钮,之前选中的按钮会自动变为未选中状态。

    • 访问函数:

      //函数用于获取当前的自动互斥状态
      bool autoExclusive() const
      ///函数用于设置自动互斥的状态,参数为 true 表示启用,为 false 表示关闭  
      void setAutoExclusive(bool)
      
  • autoRepeat : bool – 是否启用了自动重复功能

    • 属性描述:

      这个属性用来控制按钮是否启用自动重复功能。默认自动重复功能是关闭的,可以通过 setAutoRepeat(bool) 函数来启用或禁用。

      当自动重复功能被启用时,如果用户按下按钮不松开,按钮会周期性地发出三个信号:pressed()released()clicked()。这种机制通常用于需要持续操作的场景,比如拖动或持续选择。自动重复的初始延迟和间隔时间可以通过 autoRepeatDelayautoRepeatInterval 属性来设置,这两个属性的单位是毫秒。

    • 访问函数:

      //获取当前自动重复的状态
      bool autoRepeat() const
      //设置自动重复的状态
      void setAutoRepeat(bool)
      
    • 注意事项:

      如果一个按钮是通过快捷键被按下的,那么自动重复会被系统启用并计时,而不是由这个类来控制。pressed()released()clicked() 信号会像正常情况一样被发出。

  • autoRepeatDelay : int – 自动重复的初始延迟时间

    • 属性说明:

      这个属性用于设置在启用自动重复(auto-repeat)功能时的初始延迟时间。autoRepeatDelay 定义了从按钮按下到第一次发出 clicked() 信号的初始延迟时间。这个属性是 int 类型的整数,表示延迟的时间以毫秒为单位。

    • 访问函数:

      //获取当前的自动重复延迟时间
      int autoRepeatDelay() const
      //设置自动重复的延迟时间
      void setAutoRepeatDelay(int)
      
  • autoRepeatInterval : int – 自动重复的间隔时间

    • 属性说明:

      这个属性用来保存自动重复的间隔时间。用于定义当自动重复功能被启用时,两次自动重复操作(如click())之间的时间间隔。

    • 访问函数:

      //获取当前的自动重复间隔
      int autoRepeatInterval() const
      //设置自动重复间隔
      void setAutoRepeatInterval(int)
      
  • checkable : bool – 按钮是否可勾选(即可切换选中状态)

    • 属性说明:

      这个属性用于指定按钮是否能够切换到选中或未选中状态。

      可勾选按钮允许用户进行单次点击操作来切换其选中状态,这通常用于选项选择,例如 QCheckBox 或单选按钮 QRadioButton

    • 访问函数:

      //查询按钮当前是否设置为可勾选状态
      bool isCheckable() const
      //用于设置按钮的可勾选状态。如果传入 true,则按钮将变为可勾选;如果传入 false,则按钮将变为不可勾选。
      void setCheckable(bool)
      
  • checked : bool – 控件是否已勾选

    • 属性说明:

      这个属性用来保存按钮是否被选中(或称作“勾选”)。只有可勾选的按钮才可以被选中。默认情况下,按钮是未选中的。

    • 访问函数:

      //检查按钮是否被选中
      bool isChecked() const
      //设置按钮的选中状态
      void setChecked(bool)
      
    • 注意事项:

      • 当按钮的选中状态改变时发出void toggled(bool checked)信号,该信号传递一个布尔值参数,表示新的选中状态。
      • 这个属性与 checkable 属性相关。checkable 属性可能用来控制按钮是否可以被勾选。
  • down : bool – 按钮是否被按下

    • 属性说明:

      这个属性保存按钮是否被按下。默认情况下,down 属性是 false,表示按钮没有被按下。

      down 属性设置为 true 时,按钮会显示为被按下的状态,但这不会触发 pressed()clicked() 信号。这可以用于在不触发信号的情况下更新按钮的显示状态,例如,在动画或自定义用户界面交互中。

    • 访问函数:

      //检查按钮是否被按下
      bool isDown() const
      //设置按钮是否应该显示为被按下
      void setDown(bool)
      
  • icon : QIcon – 按钮上显示的图标

    • 属性说明:

      这个属性保存了在按钮上显示的图标。

    • 访问函数:

      //获取当前按钮上的图标
      QIcon icon() const
      //设置按钮上的图标
      void setIcon(const QIcon &icon)
      
  • iconSize : QSize – 按钮的图标大小

    • 属性说明:

      这个属性用于保存按钮中图标的大小。它是一个 QSize 类型,表示图标的宽度和高度。

    • 访问函数:

      //获取当前设置的图标大小
      QSize iconSize() const
      //设置按钮图标的大小
      void setIconSize(const QSize &size)
      
  • shortcut : QKeySequence – 快捷键

    • 属性说明:

      这个属性保存与按钮关联的助记符(快捷键)。快捷键允许用户通过键盘操作来快速触发按钮的行为,而不必使用鼠标。

    • 访问函数:

      //获取与按钮关联的快捷键
      QKeySequence shortcut() const
      //设置按钮的快捷键
      void setShortcut(const QKeySequence &key)
      
  • text : QString – 按钮上显示的文本

    • 属性说明:

      这个属性保存了在按钮上显示的文本。如果文本包含一个和号字符 (‘&’),则会自动为其创建一个快捷键,跟随 ‘&’ 的字符将被用作快捷键。

    • 访问函数:

      //获取按钮当前的文本
      QString text() const
      //设置按钮的文本
      void setText(const QString &text)
      

三、Public Functions(公共函数)

1.构造函数

QAbstractButton::QAbstractButton(QWidget *parent = nullptr)
  • 函数说明:

    用于创建一个抽象按钮对象。

  • 参数说明:

    • parent: 参数是一个指向父控件的指针。在Qt的事件系统和布局系统中,子控件通常需要一个父控件。如果提供 nullptr 作为父控件,该按钮将不属于任何父控件,也不会被自动删除。
  • 注意事项:

    由于 QAbstractButton 是一个抽象类,不能直接实例化。这个构造函数主要用于其子类,如 QPushButtonQCheckBoxQRadioButton 等。

2.autoExclusive与setAutoExclusive函数–获取/设置自动互斥状态

//函数用于获取当前的自动互斥状态
bool autoExclusive() const
///函数用于设置自动互斥的状态,参数为 true 表示启用,为 false 表示关闭  
void setAutoExclusive(bool)

3.autoRepeat与setAutoRepeat函数–获取/设置自动重复状态

//获取当前自动重复的状态
bool autoRepeat() const
//设置自动重复的状态
void setAutoRepeat(bool)

4.autoRepeatDelay与setAutoRepeatDelay函数–获取/设置自动重复的初始延迟时间

//获取当前的自动重复延迟时间
int autoRepeatDelay() const
//设置自动重复的延迟时间
void setAutoRepeatDelay(int)

5.autoRepeatInterval与setAutoRepeatInterval函数–获取/设置自动重复的间隔时间

//获取当前的自动重复间隔
int autoRepeatInterval() const
//设置自动重复间隔
void setAutoRepeatInterval(int)

6.icon与setIcon函数–获取/设置按钮上显示的图标

//获取当前按钮上的图标
QIcon icon() const
//设置按钮上的图标
void setIcon(const QIcon &icon)

7.iconSize与setIconSize函数–获取/设置按钮的图标大小

//获取当前设置的图标大小
QSize iconSize() const
//设置按钮图标的大小
void setIconSize(const QSize &size)

8.isCheckable与setCheckable函数–获取/设置按钮的可勾选状态

//查询按钮当前是否设置为可勾选状态
bool isCheckable() const
//用于设置按钮的可勾选状态。如果传入 true,则按钮将变为可勾选;如果传入 false,则按钮将变为不可勾选。
void setCheckable(bool)

9.isChecked与setChecked函数–获取/设置按钮的选中状态

//检查按钮是否被选中
bool isChecked() const
//设置按钮的选中状态
void setChecked(bool)

10.isDown与setDown函数–获取/设置按钮是否按下

//检查按钮是否被按下
bool isDown() const
//设置按钮是否应该显示为被按下
void setDown(bool)

11.shortcut与setShortcut函数–获取/设置按钮的快捷键

//获取与按钮关联的快捷键
QKeySequence shortcut() const
//设置按钮的快捷键
void setShortcut(const QKeySequence &key)

12.text与setText函数–获取/设置按钮上显示的文本

//获取按钮当前的文本
QString text() const
//设置按钮的文本
void setText(const QString &text)

13.group函数–获取按钮所属的按钮组

QButtonGroup* group() const
  • 函数说明:

    用于获取按钮所属的按钮组。如果按钮被添加到一个 QButtonGroup 对象中,group() 函数将返回一个指向该组的指针。如果按钮没有被添加到任何按钮组,group() 函数将返回 nullptr,表示按钮不属于任何组。

    QButtonGroup: 是Qt中用于管理一组按钮的类,特别是对于单选按钮(如 QRadioButton)。

  • 示例:

    QButtonGroup *group = new QButtonGroup(this);
    
    QRadioButton *radio1 = new QRadioButton("Radio Button 1");
    QRadioButton *radio2 = new QRadioButton("Radio Button 2");
    
    group->addButton(radio1, 1);  // 将radio1添加到按钮组
    group->addButton(radio2, 2);  // 将radio2添加到按钮组
    
    // 检查按钮是否属于某个按钮组
    if (radio1->group() == group) {
        qDebug("Radio1 is in the group.");
    }
    

四、Public Slots(公共槽函数)

1.animateClick函数–模拟动画点击

void animateClick(int msec = 100)
  • 函数说明:

    用于模拟按钮的动画点击。动画点击效果包括按钮立即被按下,并在指定的毫秒数后释放。默认的延迟时间是100毫秒,但可以通过函数参数 msec 自定义。

  • 注意事项:

    • 此函数会触发与点击事件相关联的所有信号,包括 pressed()released()clicked()
    • 如果按钮处于禁用状态(isEnabled() 返回 false),调用 animateClick() 将不会有任何效果,不会触发任何信号或动画。
    • 这个函数可以用于实现自定义的交互效果,例如,在无法直接与用户交互时自动触发按钮点击。

2.click函数–点击操作

void click()
  • 函数说明:

    用于模拟按钮的点击操作。

    • 当调用 click() 时,与按钮点击相关的信号 pressed()released()clicked() 将被发出,模拟了用户实际点击按钮的行为。
    • 如果按钮具有可勾选属性(即可用 setCheckable(true) 设置),点击时按钮的选中状态将会切换。
    • 如果按钮处于禁用状态(isEnabled() 返回 false),调用 click() 将不会有任何效果,不会触发任何信号。
    • animateClick(int msec) 不同,click() 立即触发点击事件,没有动画效果或延迟。

3.setChecked函数–设置按钮的选中状态

void setChecked(bool)

4.setIconSize函数–设置按钮图标的大小

void setIconSize(const QSize &size)

5.toggle函数–切换按钮的选中状态

void toggle()
  • 函数说明:

    将按钮的状态在选中(checked)和未选中(unchecked)之间切换。如果按钮当前是选中的,调用 toggle() 会使其变为未选中;如果当前是未选中的,调用 toggle() 会使其变为选中。

五、Signals(信号)

1.clicked

[signal] void QAbstractButton::clicked(bool checked = false)
  • 信号说明:

    这个信号在以下情况下被发射:

    • 用户通过鼠标点击按钮,并且鼠标指针在按钮内时按下并释放。
    • 用户输入了按钮的快捷键。
    • 通过代码调用 click()animateClick() 函数。
  • 这个信号不会在以下情况下被发射:

    • 调用 setDown() 设置按钮为按下状态。
    • 调用 setChecked() 设置按钮的选中状态。
    • 调用 toggle() 切换按钮的状态。

    如果按钮是可选中的(例如 QCheckBox),则信号传递的参数 checked 会告诉接收者按钮当前是选中还是未选中的状态。

2.pressed

[signal] void QAbstractButton::pressed()
  • 信号说明:

    这个信号在用户按下按钮时发出。

    信号的触发可能由用户直接操作(如鼠标点击或键盘快捷键)引起,也可能由程序逻辑(如调用 click() 函数)触发。

3.released

[signal] void QAbstractButton::released()
  • 信号说明:

    这个信号在按钮释放时被触发。

    如果按钮是可选中的,并且点击导致了按钮状态的切换,released 信号将在状态切换之后发出。

4.toggled – 按钮选中状态发生变化时发出

[signal] void QAbstractButton::toggled(bool checked)
  • 信号说明:3.

    这个信号,当可勾选按钮的选中状态发生变化时发出。

    此信号可能由用户操作、调用 click() 槽函数或直接调用 setChecked(bool) 函数触发。

    在信号发出之前,如果按钮属于互斥按钮组,组内其他按钮的状态将被适当更新,确保只有一个按钮处于选中状态。

  • 参数说明:

    • checked 参数表示按钮的新状态:如果 checkedtrue,则按钮现在是选中状态;如果为 false,则按钮现在是未选中状态。

六、Protected Functions(受保护的函数)

1.checkStateSet函数

[virtual protected] void QAbstractButton::checkStateSet()
  • 函数说明:

    该函数的主要目的是在设置按钮的选中状态时,允许子类(如 QCheckBoxQRadioButton)根据需要重置或更新按钮的中间状态。

    此函数通常在以下情况下被调用:

    • 用户通过界面操作选中或取消选中按钮。
    • 通过代码调用 setChecked(bool) 来改变按钮的选中状态。
    • 按钮是互斥组的一部分,且另一个按钮的状态改变导致当前按钮的状态需要更新。

2.hitButton函数

[virtual protected] bool QAbstractButton::hitButton(const QPoint &pos) const
  • 函数说明:

    用于确定一个给定的位置 pos 是否在按钮的可点击区域内。如果 pos 在按钮的可点击区域内,则返回 true;否则返回 false。默认情况下,可点击区域是整个控件。子类可以重新实现此函数以提供不同形状和大小的可点击区域的支持。

  • 参数说明:

    • 该函数接受一个 QPoint 类型的参数,表示鼠标点击或触摸事件的位置。

3.nextCheckState函数

[virtual protected] void QAbstractButton::nextCheckState()
  • 函数说明:

    允许子类通过重写 nextCheckState 来实现按钮的中间状态。当按钮被点击时,nextCheckState 被调用,以处理按钮的状态变化。对于可勾选的按钮,默认行为是切换其选中状态。这个函数与 checkStateSet() 函数相关联,checkStateSet() 可能用于设置或更改按钮的勾选状态。

七、Reimplemented Protected Functions(重写的受保护函数)

  可重载的事件处理函数

image-20240716201652795

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

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

相关文章

Magic Insert的奇特功能

当然可以&#xff01;让我为你详细介绍一下 Magic Insert 这个有趣的项目。 Magic Insert 是一个基于 AI 技术的创意工具&#xff0c;它允许我们从一张图像中提取一个主题&#xff0c;并将其以不同风格插入到另一张图像中&#xff0c;使得插入效果既符合目标图像的风格&#x…

Arduino呼吸灯

本次学习的内容 1、信号的输入与输出以及信号的分类。 2、理解数字信号与模拟信号以及它们的区别。 3、学会通过模拟输出的方式完成灯的呼吸效果。 Arduino中信号的分类 模拟信号|数字信号 模拟信号&#xff1a;是指用连续变化的物理量所表达的信息&#xff0c;如温度、湿…

基于springboot和mybatis的RealWorld后端项目实战一之hello-springboot

新建Maven项目 注意archetype选择quickstart pom.xml 修改App.java App.java同级目录新增controller包 HelloController.java package org.example.controller;import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotatio…

VScode终端和外部终端中文乱码问题

VScode终端和外部终端中文乱码问题 前言VScode终端VScode的第二大特点方法一方法二外部终端&#xff08;命令为ctrlf5&#xff09; 总结实现VScode终端和外部终端都能运行可执行文件 心得 前言 如果只想要看解决方案可直接跳转到总结部分&#xff0c;其余的章节只是用来说明原…

解决多源异构数据整合难题“良策“,助企业高效管理数据资产

大数据的兴起&#xff0c;为各行各业的数字化转型注入了新动力&#xff0c;数据量的激增已成为不争的事实。在过去的十年中&#xff0c;我们见证了数据总量的近十倍增长&#xff0c;不同类型、格式和结构的数据不断涌现&#xff0c;数据的来源也变得极为广泛&#xff0c;涵盖了…

Logback日志异步打印接入指南,输出自定义业务数据

背景 随着应用的请求量上升&#xff0c;日志输出量也会成线性比例的上升&#xff0c;给磁盘IO带来压力与性能瓶颈。应用也遇到了线程池满&#xff0c;是因为大量线程卡在输出日志。为了缓解日志同步打印&#xff0c;会采取异步打印日志。这样会引起日志中的追踪id丢失&#xf…

记录些MySQL题集(9)

MySQL之死锁问题分析、事务隔离与锁机制的底层原理剖析 一、MySQL中的死锁现象 所谓的并发事务&#xff0c;本质上就是MySQL内部多条工作线程并行执行的情况&#xff0c;也正由于MySQL是多线程应用&#xff0c;所以需要具备完善的锁机制来避免线程不安全问题的问题产生&#…

leetcode简单题26 N.118 杨辉三角 rust描述

// 动态规划 pub fn generate(num_rows: i32) -> Vec<Vec<i32>> {let mut triangle: Vec<Vec<i32>> vec![];for i in 0..num_rows {let mut row vec![1; (i 1) as usize];for j in 1..i as usize {row[j] triangle[(i - 1) as usize][(j - 1)]…

代理高并发如何去解决?

代理高并发问题的解决方法涉及多个层面&#xff0c;包括架构设计、资源优化、技术选型等方面。以下是一些具体的解决方案&#xff1a; 1. 架构设计 分布式架构&#xff1a; 微服务架构&#xff1a;将大型应用拆分为多个小型服务&#xff0c;每个服务独立部署、扩展和升级&…

【python虚拟环境管理】【mac m3】 使用pipx安装poetry

文章目录 一. 安装 pipx二. 安装Poetry1. 安装2. advanced 操作 官网文档&#xff1a;https://python-poetry.org/docs/ pipx介绍文档&#xff1a;https://blog.51cto.com/u_15064632/2570626 一. 安装 pipx pipx 用于全局安装 Python 命令行应用程序&#xff0c;同时在虚拟环…

Qt纯代码绘制一个等待提示Ui控件

等待样式控件是我们在做UI时出场率还挺高的控件之一&#xff0c;通常情况下有如下的几种实现方式&#xff1a;1、自定义绘图&#xff0c;然后重写paintEvent函数&#xff0c;在paintEvent中绘制等待图标&#xff0c;通过QTimer更新绘制达到转圈圈的效果。2、 获取一张gif的资源…

GD32 MCU上电跌落导致启动异常如何解决

大家是否碰到过MCU上电过程中存在电源波动或者电压跌落导致MCU启动异常的问题&#xff1f;本视频将会为大家讲解可能的原因以及解决方法&#xff1a; GD32 MCU上下电复位波形如下图所示&#xff0c;上电过程中如果存在吃电的模块&#xff0c;比如wifi模块/4G模块/开启某块电路…

【Python实战因果推断】37_双重差分8

目录 Diff-in-Diff with Covariates Diff-in-Diff with Covariates 您需要学习的 DID 的另一个变量是如何在模型中包含干预前协变量。这在您怀疑平行趋势不成立&#xff0c;但条件平行趋势成立的情况下非常有用&#xff1a; 考虑这种情况&#xff1a;您拥有与之前相同的营销数…

Java面试题--JVM大厂篇之Serial GC在JVM中有哪些优点和局限性

目录 引言: 正文&#xff1a; 一、Serial GC概述 二、Serial GC的优点 三、Serial GC的局限性 结束语: 引言: 在Java虚拟机&#xff08;JVM&#xff09;中&#xff0c;垃圾收集器&#xff08;Garbage Collector, GC&#xff09;是关键组件之一&#xff0c;负责自动管理内…

深度学习落地实战:手势识别

前言 大家好&#xff0c;我是机长 本专栏将持续收集整理市场上深度学习的相关项目&#xff0c;旨在为准备从事深度学习工作或相关科研活动的伙伴&#xff0c;储备、提升更多的实际开发经验&#xff0c;每个项目实例都可作为实际开发项目写入简历&#xff0c;且都附带完整的代…

部署运维之二:虚拟化

摘要&#xff1a; 在21世纪初的曙光中&#xff0c;虚拟化技术悄然萌芽&#xff0c;标志着计算领域的一次革命性飞跃。这一时期&#xff0c;通过引入虚拟化技术&#xff0c;业界实现了在单一物理服务器之上并行运行多个虚拟机的壮举&#xff0c;每个虚拟机均构筑起一个隔离而独…

【计算机网络】学习指南及导论

个人主页&#xff1a;【&#x1f60a;个人主页】 系列专栏&#xff1a;【❤️计算机网络】 文章目录 前言我们为什么要学计算机网络&#xff1f;计算机网络概述计算机网络的分类按交换技术分类按使用者分类按传输介质分类按覆盖网络分类按覆盖网络分类 局域网的连接方式有线连接…

从零实现大模型-BERT微调

The Annotated Transformer注释加量版&#xff1a;复现Transformer&#xff0c;训练翻译模型 The Annotated GPT2注释加量版&#xff1a;GPT2预训练 The Annotated BERT注释加量版&#xff1a;BERT预训练 从零实现大模型-GPT2指令微调&#xff1a;GPT2指令微调 按照顺序&am…

海外媒体发稿:葡萄牙-实现高效媒体软文发稿计划-大舍传媒

一、葡萄牙媒体环境概述 葡萄牙&#xff0c;位于欧洲大陆西南端的国家&#xff0c;拥有丰富的文化和历史。在这个国家&#xff0c;媒体行业也有着相当大的影响力。葡萄牙的媒体环境多元化&#xff0c;包括电视、广播、报纸、杂志和互联网等各个领域。 二、葡萄牙媒体发稿的重…

Win10+Docker配置TensorRT环境

1.Docker下载和安装 Docker下载:Install Docker Desktop on Windows Docker安装: 勾选直接下一步就行,安装完成后需要电脑重启。 重启后,选择Accept—>Continue without signing in—>skip survey. 可以进入下面页面,并且左下角是绿色的,显示e…