自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(4123)
  • 资源 (258)
  • 收藏
  • 关注

原创 【JavaScript】JavaScript 运算符 ⑤ ( 运算符优先级 )

一、JavaScript 运算符优先级1、运算符优先级 概念2、运算符优先级 列举3、运算符示例

2024-03-19 20:53:24 1764 1

原创 【JavaScript】JavaScript 运算符 ⑤ ( 赋值运算符 | 基础赋值运算符 与 复合赋值运算符 )

一、JavaScript 赋值运算符1、赋值运算符 概念2、基础赋值运算符 与 复合赋值运算符3、复合赋值运算符4、完整代码示例

2024-03-17 21:36:50 1682 15

原创 【JavaScript】JavaScript 运算符 ④ ( 逻辑运算符 | 逻辑与运算符 && | 逻辑或运算符 || | 逻辑非运算符 ! )

一、JavaScript 逻辑运算符1、逻辑运算符 概念2、逻辑与运算符 &&3、逻辑或运算符 ||4、逻辑非运算符 !5、完整代码示例

2024-03-16 23:52:44 1477 10

原创 【JavaScript】JavaScript 运算符 ③ ( 比较运算符 | 等于比较 运算符 == | 不等于比较 运算符 != | 严格等于比较 运算符 === )

一、JavaScript 运算符1、比较运算符 概念2、比较运算符 列举3、等于比较 运算符 ==4、不等于比较 运算符 !=5、严格等于比较 运算符 ===5、严格不等于比较 运算符 !==6、赋值运算符 = / 等于比较运算符 == / 严格等于比较运算符 === 示例

2024-03-16 20:52:56 1147 3

原创 【JavaScript】JavaScript 运算符 ② ( 表达式 与 返回值 | 自增 与 自减运算符 细节 | 前置自增运算符 | 后置自增运算符 )

一、JavaScript 运算符1、表达式 与 返回值2、自增 与 自减运算符 细节3、前置自增运算符4、后置自增运算符5、自增 / 自减 运算符 代码示例

2024-03-15 21:29:34 884 8

原创 【JavaScript】JavaScript 运算符 ① ( 运算符分类 | 算术运算符 | 浮点数 的 算术运算 精度问题 )

一、JavaScript 运算符1、运算符分类2、算术运算符3、浮点数 的 算术运算 精度问题

2024-03-15 18:34:51 1055 2

原创 【JavaScript】JavaScript 简介 ④ ( 解释型语言 和 编译型语言 | 计算机程序本质 | 编译器 和 解释器 )

一、 解释型语言 和 编译型语言1、计算机程序本质2、编译器 和 解释器3、编译器 分析4、解释器 分析

2024-03-14 21:15:00 1120 13

原创 【JavaScript】数据类型转换 ② ( 字符类型 转为 数据类型 | parseInt() / parseFloat() 函数 | Number() 函数 | 运算符隐式转换 )

一、 字符类型 转为 数据类型1、parseInt() / parseFloat() 函数2、Number() 函数3、运算符隐式转换

2024-03-14 19:15:00 1443

原创 【JavaScript】数据类型转换 ① ( 隐式转换 和 显式转换 | 常用的 数据类型转换 | 转为 字符串类型 方法 )

一、 JavaScript 数据类型转换1、数据类型转换2、隐式转换 和 显式转换3、常用的 数据类型转换4、转为 字符串类型 方法

2024-03-13 21:11:39 1190 9

原创 【JavaScript】JavaScript 变量 ⑧ ( 获取变量数据类型 | 使用 typeof 运算符 获取变量数据类型 | 判断 空类型 | 判断 数组类型 | 获取 对象 具体类型 )

一、获取变量数据类型1、使用 typeof 运算符 获取变量数据类型2、判断 空类型3、判断 数组类型4、获取 对象 具体类型

2024-03-13 20:30:00 1709

原创 【JavaScript】JavaScript 变量 ⑦ ( JavaScript 数据类型 | Boolean 布尔类型 | Undefined 类型 | Null 类型 )

一、 JavaScript 数据类型 - Boolean 布尔类型1、Boolean 类型简介2、Boolean 类型转换二、 JavaScript 数据类型 - Undefined 类型1、Undefined 类型简介2、Undefined 类型值与其它值相加三、 JavaScript 数据类型 - Null 类型

2024-03-12 22:37:11 1897 5

原创 【学习方法】“ 视觉空间学习者 “ 学习方法推荐 ( 视觉空间学习者 与 听觉顺序学习者 | 学习过程 | 无效学习 | 学校学习弊端 | 视觉空间学习者 - 学习方法推荐 )

一、 视觉空间学习者 与 听觉顺序学习者1、视觉空间学习者2、听觉顺序学习者二、 视觉空间学习者 - 学习方法1、视觉空间学习者 - 学习过程2、视觉空间学习者 - 无效学习3、视觉空间学习者 - 学校学习弊端4、视觉空间学习者 - 学习方法推荐

2024-03-12 18:45:00 2407 3

原创 【JavaScript】JavaScript 变量 ⑥ ( JavaScript 数据类型 - String 字符串类型 | 字符串长度 | 加号运算符 拼接字符串 | 模板字符串 拼接字符串 )

一、 JavaScript 数据类型 - String 字符串类型1、字符串长度2、字符串拼接使用 加号运算符 拼接字符串使用 模板字符串 拼接字符串

2024-03-11 22:06:20 1203 12

原创 【JavaScript】JavaScript 变量 ⑤ ( JavaScript 数据类型 - String 字符串类型 | 引号嵌套 | 创建字符串 | 转义字符 )

一、 JavaScript 数据类型 - String 字符串类型1、String 类型简介2、引号嵌套3、创建字符串4、转义字符二、 代码示例 - String 字符串类型1、完整代码示例2、展示效果

2024-03-11 18:45:00 1760 1

原创 【JavaScript】JavaScript 变量 ④ ( 变量数据类型 | JavaScript 数据类型 | 简单数据类型 | 复杂数据类型 | 数字类型 Number | 数字类型取值范围 )

一、 JavaScript 变量数据类型1、变量数据类型确定2、代码示例二、 JavaScript 数据类型1、简单数据类型2、数字类型 Number存储形式常见进制数字类型取值范围数字类型 特殊数值判断变量是否是数字类型数字类型代码示例

2024-03-10 20:49:29 1893 14

原创 【JavaScript】JavaScript 变量 ③ ( JavaScript 变量命名规范 | 变量名组成 | 变量名开头 | 严格区分大小写 | 不能是关键字 | 驼峰式命名 | 常量全大写 )

一、 JavaScript 变量命名规范1、变量名组成2、变量名开头3、变量名严格区分大小写4、变量不能是 关键字5、驼峰式命名法6、常量使用全大写字母7、变量定义推荐规则

2024-03-10 12:35:38 1884 2

原创 【JavaScript】JavaScript 变量 ② ( JavaScript 变量语法扩展 | 同时声明多个变量 | 只声明变量不赋值 | 不声明变量不赋值 | 不声明变量直接进行赋值 )

一、JavaScript 变量语法扩展1、同时声明多个变量2、只声明变量不赋值3、不声明变量不赋值4、不声明变量直接进行赋值

2024-03-10 10:14:03 1195 1

原创 【CSS】CSS 总结 ⑥ ( 盒子模型摆放机制 - 普通流 / 浮动 / 定位 | 浮动 - 脱离标准流 | 清除浮动语法 | 额外标签法 | after 伪元素清除浮动 ) ★

一、CSS 浮动1、盒子模型位置摆放三大机制 - 普通流 / 浮动 / 定位2、浮动语法说明3、浮动 - 脱离标准流4、浮动元素与父容器盒子关系二、CSS 清除浮动1、清除浮动 简介2、清除浮动 语法 - 额外标签法3、清除浮动 语法 - 父级元素设置 overflow 样式4、额外标签法 和 overflow 样式法弊端5、清除浮动 语法 - after 伪元素清除浮动6、清除浮动 语法 - 使用双伪元素清除浮动

2024-03-09 21:46:14 759 9

原创 【FFmpeg】ffmpeg 命令行参数 ⑤ ( 使用 ffmpeg 命令提取 音视频 数据 | 保留封装格式 | 保留编码格式 | 重新编码 )

一、使用 ffmpeg 命令提取 音视频 数据1、提取音频数据 - 保留封装格式2、提取视频数据 - 保留封装格式3、提取视频数据 - 保留编码格式4、提取视频数据 - 重新编码5、提取音频数据 - 保留编码格式6、提取音频数据 - 重新编码

2024-03-09 21:03:28 3246 2

原创 【JavaScript】JavaScript 变量 ① ( JavaScript 变量概念 | 变量声明 | 变量类型 | 变量初始化 | ES6 简介 )

一、JavaScript 变量1、变量概念2、变量声明3、ES6 简介4、变量类型5、变量初始化二、JavaScript 变量示例1、代码示例2、展示效果

2024-03-08 22:07:35 1571 12

原创 【JavaScript】JavaScript 简介 ③ ( JavaScript 单行/多行注释 | 输入输出语句 | prompt 函数 | alert 函数 | console.log 函数 )

一、JavaScript 注释1、单行注释2、多行注释3、设置多行注释快捷键二、JavaScript 输入输出语句1、浏览器输入框 - prompt()2、浏览器警告框 - alert()3、浏览器控制台输出 - console.log()

2024-03-08 20:15:00 2575 1

原创 【JavaScript】JavaScript 简介 ② ( JavaScript 书写方式 | 内联 JavaScript | 内嵌 JavaScript | 外部 JavaScript )

一、JavaScript 书写方式1、内联 JavaScript2、内嵌 JavaScript3、外部 JavaScript

2024-03-07 22:03:13 1742 8

原创 【CSS】CSS 总结 ⑤ ( CSS 盒子边框 | CSS 盒子模型内边距 | CSS 盒子模型外边距 | CSS 盒子模型圆角边框 | CSS 盒子模型阴影 ) ★

一、CSS 盒子边框1、盒子模型2、盒子边框设置语法单独设置语法综合设置语法3、盒子边框单独指定语法4、盒子边框合并二、CSS 盒子模型内边距1、盒子模型内边距简介概念内边距设置语法内边距设置效果2、盒子模型内边距复合写法3、盒子模型尺寸计算4、内边距 对 盒子模型尺寸 的影响三、CSS 盒子模型外边距1、盒子模型外边距属性单独设置2、外边距属性复合写法3、盒子水平居中设置4、图片位置改修5、标签默认外边距6、清除默认的外边距7、上下相邻两个模型盒子 外边距塌陷

2024-03-07 19:45:00 2279 3

原创 【CSS】CSS 总结 ④ ( CSS 特性 | 样式层叠冲突 | 样式的继承性 | 样式优先级 | 选择器基本权重 | 后代选择器权重计算 | 链接伪类选择器权重计算 | 判定标签样式 ) ★

一、CSS 特性1、样式层叠冲突2、样式的继承性3、优先级引入4、选择器基本权重5、后代选择器权重计算6、后代选择器权重计算二7、链接伪类选择器权重计算8、判定标签样式

2024-03-07 19:15:00 1515

原创 【JavaScript】JavaScript 简介 ① ( 浏览器组成 - 渲染引擎 / JavaScript 引擎 | JavaScrip 示例 | JavaScrip 引擎工作过程分析 )

一、浏览器组成 - 渲染引擎 / JavaScript 引擎1、浏览器组成2、渲染引擎3、JavaScript 引擎二、JavaScrip 示例1、代码示例2、JavaScrip 引擎工作过程分析

2024-03-06 22:26:38 1349 5

原创 【CSS】CSS 总结 ③ ( CSS 背景设置 | 背景颜色 | 背景图片 | 背景图片平铺样式 | 背景图片位置 | 超大背景图片设置 | 背景附着 | 背景样式简写 | 背景半透明 ) ★

一、CSS 背景设置1、背景颜色2、背景图片3、背景图片平铺样式4、背景图片位置5、超大背景图片设置网页背景兼容问题超大背景图片推荐定位超大背景图片编辑策略6、背景附着7、背景样式简写8、背景半透明

2024-03-06 20:44:31 3332 4

原创 【CSS】CSS 总结 ② ( CSS 字体文本样式 - 大小 / 字体 / 粗细 / 斜体 / 颜色 / 对齐 | CSS 标签显示模式 - 块级元素 / 行内元素 / 行内块元素 ) ★

一、CSS 字体文本样式1、CSS 字体设置2、CSS 字体设置综合写法3、CSS 文本样式二、CSS 标签显示模式1、块级元素2、行内元素3、行内块元素4、块级元素 / 行内元素 / 行内块元素 相互转换

2024-03-06 20:28:35 3754

原创 【CSS】CSS 总结 ① ( CSS 引入方式 | CSS 选择器 | 基础选择器 | 复合选择器 ) ★

一、CSS 引入方式1、CSS 的 3 种引入方式 ( 内联 | 内嵌 | 外链 )二、CSS 选择器1、CSS 基础选择器2、CSS 复合选择器后代选择器子元素选择器交集选择器并集选择器链接伪类选择器

2024-03-06 19:15:00 1158

原创 【CSS3】浏览器私有前缀 ( WebKit 内核前缀 -webkit- | Gecko 内核前缀 -moz- | Trident 内核前缀 -ms- | Presto 内核前缀 -o- )

一、浏览器私有前缀1、" 浏览器私有前缀 " 引入2、" 浏览器私有前缀 " 列举3、" 浏览器私有前缀 " 推荐写法

2024-03-05 21:40:16 2502 13

原创 【CSS3】CSS3 3D 转换示例 - 3D 旋转木马 ( @keyframes 规则 定义动画 | 为 盒子模型 应用动画 | 开启透视视图 | 设置 3D 呈现样式 )

一、3D 导航栏示例 - 核心要点1、需求分析2、HTML 结构section 标签3、CSS 样式@keyframes 规则 定义动画为 盒子模型 应用动画开启透视视图设置 3D 呈现样式鼠标移动到控件上方效果设置 6 个子盒子模型的效果二、完整代码示例1、代码示例2、展示效果

2024-03-05 21:03:09 6569 17

原创 【CSS3】CSS3 3D 转换示例 - 3D 导航栏示例 ( 列表设置 | 透视视图 | 过渡动画 | 3D 呈现样式 | 鼠标移动到控件上方效果 | 设置两个子盒子模型的效果 )

一、3D 导航栏示例 - 核心要点1、需求分析2、HTML 结构3、CSS 样式列表设置开启透视视图设置过渡动画设置 3D 呈现样式鼠标移动到控件上方效果设置两个子盒子模型的效果二、完整代码示例1、代码示例2、展示效果

2024-03-04 20:15:00 1364 4

原创 【开发工具】GIF 录屏工具推荐 ( GIF123 - 推荐使用 | GifCam | LICEcap )

一、GIF 录屏工具推荐1、GIF123 ( 推荐使用 )2、GifCam3、LICEcap

2024-03-04 10:11:57 1426 7

原创 【CSS3】CSS3 3D 转换示例 - 盒子模型翻转示例 ( 开启透视视图 | 设置过渡动画 | 设置 3D 呈现样式 | 鼠标移动到控件上方效果 | 设置两个子盒子模型背靠背效果 )

一、盒子模型翻转示例1、核心要点开启透视视图设置过渡动画设置 3D 呈现样式鼠标移动到控件上方效果设置两个子盒子模型背靠背效果2、完整代码示例代码示例展示效果

2024-03-03 20:00:31 1357 5

原创 【FFmpeg】ffmpeg 命令行参数 ④ ( ffmpeg 视频参数解析 | 设置视频帧数 | 设置视频码率 | 设置视频帧率 | 设置视频宽高 | 设置视频宽高比 | 设置视频滤镜 )

一、设置视频帧数 -vframes 参数1、-vframes 参数解析使用 -vframes 参数设置帧数使用 -frames:v 参数设置帧数二、设置视频码率 -b:v / -b 参数1、-b:v / -b 参数解析三、设置输出视频帧率 -r 参数1、-r 参数解析四、设置视频画面宽高 -s 参数1、-s 参数解析五、设置视频画面宽高比 -aspect 参数1、-aspect 参数解析六、设置视频编解码器 -vcodec 参数1、-vcodec 参数解析六、设置视频滤镜 -vf

2024-03-02 21:10:10 9498 20

原创 【CSS3】CSS3 3D 转换 ⑤ ( 3D 呈现效果 - transform-style 属性 | transform-style 属性语法 | 设置 透视视图 效果 | 结构伪类选择器 )

一、3D 呈现效果 - transform-style 属性1、transform-style 属性语法二、transform-style 属性示例1、核心要点设置 透视视图 效果设置 父容器 3D 呈现效果结构伪类选择器2、代码示例

2024-02-29 21:02:03 1633 8

原创 【FFmpeg】ffmpeg 命令行参数 ③ ( ffmpeg 音频参数解析 | 设置音频帧数 | 设置音频码率 | 设置音频采样率 | 设置音频通道数 | 设置音频编解码器 | 设置音频过滤器 )

一、设置音频帧数 -aframes 参数1、-aframes 参数解析2、-aframes 参数示例 - 输出 100 帧音频3、-t 参数示例 - 输出 3 秒音频二、设置音频码率 -b:a 参数1、-b:a 参数解析2、-b:a 参数设置音频码率示例三、设置音频采样率 -ar 参数1、-ar 参数解析2、-ar 参数设置音频采样率示例四、设置音频通道数 -ac 参数1、-ac 参数解析2、-ac 参数设置音频声道数示例五、设置音频编解码器 -acodec 参数

2024-02-27 20:00:00 8899 18

原创 【FFmpeg】ffmpeg 命令行参数 ② ( Windows 环境中 ffmpeg 命令行输出文本搜索 -findstr 用法 | -findstr 搜索文本字符串用法 | 输出命令行到文件中 )

一、Windows 环境中 ffmpeg 命令行输出文本搜索 -findstr 用法1、ffmpeg 命令行输出信息太多2、-findstr 搜索文本字符串用法3、使用 > 符号将命令行内容输出到文本文件中

2024-02-22 11:44:41 1098 4

原创 【FFmpeg】ffmpeg 命令行参数 ① ( ffpeg 命令 -i 参数 指定 输入文件 / 输入流 | ffpeg 命令 -f 参数 指定 输出格式 | 指定 时间 相关参数 )

一、Windows 搭建 FFmpeg 命令行运行环境二、ffpeg 命令 -i 参数 指定 输入文件 / 输入流1、-i 参数 说明2、-i 参数 使用示例三、ffpeg 命令 -f 参数 指定 输出格式1、-f 参数 说明2、-f 参数值列举3、-f 参数使用示例四、ffpeg 命令 指定 时间 相关参数1、设置输入文件起始时间点 -ss 参数2、设置输出文件的视频长度 -t 参数

2024-02-15 21:52:27 6979 28

原创 【易学】周易入门 ③ ( 玄学五术 - 山医命相卜 | 天命无常 唯有德者居之 | 预测学模型 | 五行学说 | 五行相生 | 五行相克 )

一、玄学五术 - 山医命相卜二、天命无常 唯有德者居之三、预测学模型四、五行学说1、五行相生2、五行相克

2024-02-12 17:20:32 2724 6

原创 【FFmpeg】ffplay 命令行参数 ⑧ ( 设置自动旋转视频 -autorotate 参数 | 设置丢弃视频帧 -framedrop 参数 | 设置输入缓冲区 -infbuf 参数 )

一、ffplay 命令行参数 - 设置自动旋转视频1、设置自动旋转视频 -autorotate 参数2、设置自动旋转视频示例二、ffplay 命令行参数 - 设置丢弃视频帧1、设置丢弃视频帧 -framedrop 参数2、设置丢弃视频帧 -noframedrop 参数三、ffplay 命令行参数 - 设置输入缓冲区1、设置输入缓冲区 -infbuf 参数2、设置输入缓冲区示例

2024-02-11 12:50:59 1412 2

FFmpegSDL 音视频开发 ⑦ ( 播放 PCM 音频数据 )

【FFmpeg】SDL 音视频开发 ⑦ ( 播放 PCM 音频数据 | 提取 PCM 格式数据 | 设置音频参数 | 打开音频设备 | 设置播放回调函数 | 播放音频数据 | 关闭音频设备 ) 博客地址 : https://hanshuliang.blog.csdn.net/article/details/141950997 一、PCM 格式简介 1、PCM 简介 2、PCM 参数 3、声音频率 ( 注意与采样率区分 ) 4、使用 ffmpeg 获取 PCM 格式数据 5、使用 ffplay 播放 PCM 格式数据 二、SDL 播放 PCM 流程 1、初始化 SDL 2、设置音频参数 3、打开音频设备 4、设置播放回调函数 5、播放音频数据 6、关闭音频设备 7、SDL 播放 PCM 音频数据的 关键步骤 代码示例 三、完整代码示例 1、完整代码示例 2、执行结果

2024-09-10

FFmpegSDL 音视频开发 ⑥ ( SDL 播放 YUV 视频 )

【FFmpeg】SDL 音视频开发 ⑥ ( SDL 播放 YUV 视频 | YUV 4:2:0 采样 | YUV420P 格式介绍 | 获取 YUV 视频文件 | 读取并加载 YUV 画面数据 ) 博客地址:https://blog.csdn.net/shulianghan/article/details/141900912 一、SDL 播放 YUV 视频 1、YUV 4:2:0 采样 2、YUV420P 格式介绍 3、获取 YUV 视频文件 4、读取 YUV 画面数据 5、加载 YUV 视频数据 二、完整代码示例 1、代码示例 2、执行效果

2024-09-05

【AI 大模型】函数调用 Function Calling ② ( 函数调用 引入 - 函数调用开发流程 - 代码示例 )

【AI 大模型】函数调用 Function Calling ② ( Plugins、Actions 扩展 | 函数调用 Function Calling 引入 | 函数调用开发流程 | 代码示例 ) https://hanshuliang.blog.csdn.net/article/details/140380268 博客代码示例 一、Plugins、Actions 扩展 1、GPT 大模型缺陷 - 引入 Plugins、Actions 扩展 2、Plugins 插件 3、Plugins 插件开发流程 4、Plugins 插件弊端 - Actions 引入 5、Actions 简介 二、ChatGPT 的平替 - Coze、Dify 三、函数调用 Function Calling 引入 四、函数调用开发流程 1、调用 OpenAI 的接口 2、函数定义 3、大模型回调 4、本地代码逻辑 5、第二次大模型调用 五、函数调用代码示例

2024-07-20

【AI 大模型】OpenAI 接口调用 ① ( PyCharm 中开发 Python 程序调用 OpenAI 接口 )

【AI 大模型】OpenAI 接口调用 ① ( 安装 openai 软件包 | 查看 openai 软件包版本 | PyCharm 中开发 Python 程序调用 OpenAI 接口 ) https://hanshuliang.blog.csdn.net/article/details/139922167 博客源码快照 一、安装 Python SDK 二、安装 OpenAI Python SDK 1、安装 openai 软件包 2、查看 openai 软件包版本 3、openai 接口参考文档 三、PyCharm 中开发 Python 程序调用 OpenAI 接口 1、PyCharm 创建 Python 项目 2、购买 API Key 3、API Key 配置用法 4、中转 API 与 直联 API 使用注意事项 5、Python 代码示例

2024-06-24

FFmpegSDL 音视频开发 ④ ( SDL 多线程 / 创建线程 / 等待线程执行完毕 )

【FFmpeg】SDL 音视频开发 ④ ( SDL 多线程 | SDL_Thread 结构体 | SDL_CreateThread 函数创建线程 | SDL_WaitThread 函数等待线程执行 ) https://hanshuliang.blog.csdn.net/article/details/139760886 博客源码快照 一、SDL 多线程简介 1、SDL 多线程引入 2、SDL_Thread 多线程模型 二、SDL 多线程相关函数 1、SDL 创建线程 - SDL_CreateThread 函数 2、SDL 等待线程执行完毕 - SDL_WaitThread 函数 三、SDL 线程代码示例 - 创建并等待线程执行完毕 1、代码示例 2、执行结果

2024-06-18

FFmpegSDL 音视频开发 ③ ( SDL 事件处理 )

【FFmpeg】SDL 音视频开发 ③ ( SDL 事件处理 | SDL_Event 数据结构分析 | 事件处理流程 | SDL 事件获取函数 | SDL_WaitEvent 函数 ) https://hanshuliang.blog.csdn.net/article/details/139669401 博客源码快照 一、SDL 事件处理简介 1、SDL 事件处理引入 2、SDL 事件处理步骤 二、SDL 事件数据结构分析 1、SDL_Event 事件 - union 联合体 2、SDL_Event 事件处理流程 三、SDL 事件函数 1、SDL_PollEvent 函数 2、SDL_WaitEvent 函数 四、完整代码示例 1、代码示例 2、执行结果

2024-06-14

算法Graham 凸包扫描算法 ( 凸包概念 - 常用的凸包算法 - 角排序 - 叉积 - Python 代码示例 )

【算法】Graham 凸包扫描算法 ( 凸包概念 | 常用的凸包算法 | 角排序 | 叉积 | Python 代码示例 ) https://hanshuliang.blog.csdn.net/article/details/139651095 博客源码快照 一、Graham 凸包扫描算法 1、凸包概念 2、常用的凸包算法 3、Graham 凸包扫描算法 二、Graham 算法前置知识点 1、角排序 2、叉积 3、算法过程分析 三、代码示例 1、完整代码示例 2、执行结果

2024-06-13

FFmpegSDL 音视频开发 ②

【FFmpeg】SDL 音视频开发 ② https://hanshuliang.blog.csdn.net/article/details/139592113 博客源码快照

2024-06-11

FFmpegSDL 音视频开发 ① ( SDL 窗口绘制 )

【FFmpeg】SDL 音视频开发 ① ( SDL 窗口绘制 | SDL 视频显示函数 | SDL_Window 窗口 | SDL_Renderer 渲染器 | SDL_Texture 纹理 ) https://hanshuliang.blog.csdn.net/article/details/139528565 博客源码快照 一、SDL 视频显示函数 1、SDL_Init 函数 2、SDL_Quit 函数 3、SDL_CreateWindow 函数 4、SDL_CreateRenderer 函数 5、SDL_CreateTexture 函数 6、窗口 / 渲染器 / 纹理 关联 二、SDL 窗口绘制 - 代码示例 1、SDL 窗口绘制代码 2、执行结果

2024-06-07

FFmpegSDL 开发环境搭建

【FFmpeg】SDL 开发环境搭建 ( SDL 简介 | 下载 SDL 开发库 | 拷贝动态库到 C:\Windows\SysWOW64 目录 | 将 SDL 开发库配置到 Qt 项目 ) https://hanshuliang.blog.csdn.net/article/details/139516815 博客源码快照 一、SDL 简介 1、SDL 简介 2、SDL 相关网站 二、SDL 开发环境搭建 1、下载 SDL 开发库 2、SDL 开发库内容解析 3、拷贝动态库到 C:\Windows\SysWOW64 目录 4、创建 Qt 项目 5、将 SDL 开发库配置到 Qt 项目 6、SDL 窗口示例

2024-06-07

【OpenHarmony】ArkTS 语法基础 ⑥ ( ArkTS 状态管理 - @Link 装饰器 )

【OpenHarmony】ArkTS 语法基础 ⑥ ( ArkTS 状态管理 | @Link 装饰器 | 子组件定义使用 @Link 变量 | 父容器中定义 @State 变量并绑定子组件变量 ) https://hanshuliang.blog.csdn.net/article/details/139466799 博客源码快照 一、ArkTS 状态管理 - @Link 装饰器 1、@Link 装饰器 2、子组件定义 @Link 变量 3、子组件中使用 @Link 变量 4、父容器中定义 @State 变量 6、父容器中绑定 @State 变量和 @Link 变量 二、完整代码示例 1、自定义组件代码 2、父容器组件代码 3、执行结果

2024-06-05

【OpenHarmony】ArkTS 语法基础 ⑤ ( ArkTS 状态管理 / @State 装饰器定义状态数据 )

【OpenHarmony】ArkTS 语法基础 ⑤ ( ArkTS 状态管理 | @State 装饰器定义状态数据 | 使用状态数据渲染组件 ) https://hanshuliang.blog.csdn.net/article/details/139452711 博客源码快照 一、ArkTS 状态管理 - @State 装饰器 1、@State 装饰器定义状态数据 2、@State 装饰器定义状态数据 - 示例分析 3、使用 @State 装饰器定义的状态数据渲染组件 - 示例分析 二、完整代码示例 1、完整自定义组件代码示例 2、展示效果

2024-06-05

【OpenHarmony】ArkTS 语法基础 ④ ( ArkTS UI 渲染控制 - 条件渲染 - 循环渲染 )

【OpenHarmony】ArkTS 语法基础 ④ ( ArkTS UI 渲染控制 | if else 条件渲染 | ForEach 循环渲染 ) https://hanshuliang.blog.csdn.net/article/details/139441781 博客源码快照 一、ArkTS UI 渲染控制 1、if else 条件渲染 2、ForEach 循环渲染 二、完整代码示例 1、自定义组件代码 2、主界面代码 3、执行结果

2024-06-04

【OpenHarmony】ArkTS 语法基础 ③ ( 自定义组件生命周期回调函数 - 页面生命周期回调函数 )

【OpenHarmony】ArkTS 语法基础 ③ ( @Component 自定义组件生命周期回调函数 | @Entry 页面生命周期回调函数 ) https://hanshuliang.blog.csdn.net/article/details/139424435 博客源码快照 一、ArkTS @Component 自定义组件生命周期 1、自定义组件生命周期 2、aboutToAppear 函数执行时机和作用 3、aboutToDisappear 函数执行时机和作用 4、代码示例 二、ArkTS @Entry 页面生命周期 1、@Entry 页面生命周期 2、onBackPress 和 onPageHide 回调函数无关联 三、代码示例 - @Entry 页面生命周期 + @Component 自定义组件生命周期 1、代码示例 - @Component 自定义组件生命周期 2、代码示例 - @Entry 页面生命周期 3、进入页面后的效果 4、屏幕熄灭 4、屏幕点亮 5、按下 Home 键 6、Home 键返回 7、回退键退出应用

2024-06-04

【OpenHarmony】 ArkTS 语法基础 ② ( ArkTS 自定义组件 )

【OpenHarmony】ArkTS 语法基础 ② ( ArkTS 自定义组件 | 自定义可导入组件 - export 声明模块 | 导入自定义组件 - import 导入组件 ) https://hanshuliang.blog.csdn.net/article/details/139407374 博客源码快照 一、ArkTS 自定义组件 1、@Component 装饰器 2、自定义组件语法 3、将自定义组件设置为页面入口 二、ArkTS 使用外部自定义组件 1、自定义可导入组件 - export 声明模块 2、导入自定义组件 - import 导入组件

2024-06-03

Windows 10 平台 FFmpeg 开发环境搭建 博客资源

【FFmpeg】Windows 10 平台 FFmpeg 开发环境搭建 ④ ( FFmpeg 开发库内容说明 | 创建并配置 FFmpeg 项目 | 拷贝 DLL 动态库到 SysWOW64 目录 ) https://hanshuliang.blog.csdn.net/article/details/139172564 博客资源 一、FFmpeg 开发库 1、FFmpeg 开发库编译 2、FFmpeg 开发库内容说明 二、创建并配置 FFmpeg 项目 1、拷贝 dll 动态库到 C:\Windows\SysWOW64 目录 - 必须操作 特别关注 2、创建 Qt 项目 - C 语言程序 3、配置 FFmpeg 开发库 - C 语言项目 4、创建并配置 FFmpeg 开发库 - C++ 项目

2024-05-24

FFmpegFilter 过滤器 ⑥ ( 九宫格画面拼接 ) 博客资源

【FFmpeg】Filter 过滤器 ⑥ ( 九宫格画面拼接 ) 博客资源 博客地址 : https://hanshuliang.blog.csdn.net/article/details/139008847

2024-05-17

【移动端网页布局】Flex 弹性布局案例 ③

【移动端网页布局】Flex 弹性布局案例 ③

2024-03-06

GIF录屏工具-Gif123-GifCam-LICEcap

GIF录屏工具-Gif123-GifCam-LICEcap

2024-03-04

Java 语言中的 properties 配置文件使用

【Java 语言】读取 properties 配置文件 ( Java 语言中的 properties 配置文件 | 使用 properties 配置文件 ) https://hanshuliang.blog.csdn.net/article/details/134435350 博客源码

2023-11-16

JetpackNavigation 导航组件 ④ ( Fragment 跳转中使用 safe args 安全传递参数 )

https://hanshuliang.blog.csdn.net/article/details/131406972 博客源码快照 一、页面跳转间的传统的数据传递方式 1、传统的数据传递方式 - Bundle 传递数据 1、Navigation 组件中的 Bundle 数据传递 2、传统数据传递实现步骤 3、FragmentA 完整代码示例 4、FragmentB 完整代码示例 5、执行结果 2、使用 Bundle 传递数据安全性差 二、页面跳转间的传统的数据传递方式 1、导入插件依赖 2、使用插件 3、在 navigation_graph.xml 中定义要传递的 argument 参数信息 4、重新编译生成参数传递相关代码 5、调用 FragmentBArgs 类生成参数 Bundle 6、FragmentA 中获取参数 三、两种传参方式的完整代码示例 1、Gradle 构建脚本 I、根目录下 settings.gradle 构建脚本 II、根目录下 build.gradle 构建脚本 III、Module 目录下 build.gradle 构建脚本 2、res 资源配置

2023-08-25

可运行的 Android 版本的 ijkplayer 2023年 8 月 14 日调试完毕

运行环境 : 2021.3.1 Dolphin , Android Gradle 插件版本号 3.2.0 , Gradle 版本号 gradle-4.6-all.zip 【ijkplayer】编译 Android 版本的 ijkplayer ⑦ ( 使用 AS 打开源码 | 重新设置 AGP 和 Gradle 版本号 | 设置依赖仓库 | 设置依赖 | 编译运行 ) 原文链接:https://blog.csdn.net/shulianghan/article/details/132274142 一、Android Studio 打开编译后的 ijkplayer 源码 二、重新设置 Android Gradle 插件版本号和 Gradle 构建工具版本号 三、设置依赖仓库 1、取消 jcenter 仓库 2、添加 google 和 mavenCentral 仓库 3、添加阿里云仓库 四、取消 jcenter 上传相关插件 五、设置编译工具版本号 六、取消 productFlavors 七、设置 build.gradle 中的依赖为 implementation 依赖 八、编译应用

2023-08-14

hadoop-3.3.4.tar.gz + winutils 安装环境

【开发环境】安装 Hadoop 运行环境 ( 下载 Hadoop | 解压 Hadoop | 设置 Hadoop 环境变量 | 配置 Hadoop 环境脚本 | 安装 winutils ) https://hanshuliang.blog.csdn.net/article/details/132045605 一、下载 Hadoop 二、解压 Hadoop 三、设置 Hadoop 环境变量 四、配置 Hadoop 环境脚本 五、安装 winutils 六、重启电脑 七、验证 Hadoop 安装效果

2023-08-03

JetpackNavigation 导航组件 ③ ( 为 Navigation Graph 添加跳转动画 )

【Jetpack】Navigation 导航组件 ③ ( 为 Navigation Graph 添加跳转动画 ) 博客源码快照 博客地址 : https://hanshuliang.blog.csdn.net/article/details/131405392 一、为 Navigation Graph 添加跳转动画 1、进入 Navigation Graph 配置的 Design 模式 2、选中 action 跳转 3、为 action 跳转设置 enterAnim 进入动画 4、为 action 跳转设置 exitAnim 退出动画 5、通过代码为 action 跳转设置进入 / 退出动画

2023-06-26

JetpackNavigation 导航组件 ②

【Jetpack】Navigation 导航组件 ② ( Navigation 核心要点说明 | 创建 Navigation Graph | 创建 NavHostFragment | 完整代码示例 ) https://hanshuliang.blog.csdn.net/article/details/131299078

2023-06-21

DB Browser for SQLite 数据库查看工具

DB Browser for SQLite 数据库查看工具

2023-06-14

ViewModel + LiveData + DataBinding 综合使用示例

【Jetpack】ViewModel + LiveData + DataBinding 综合使用 ( 核心要点说明 | 组合方式 | 代码示例 ) 博客地址 : https://hanshuliang.blog.csdn.net/article/details/130401679 一、ViewModel + LiveData + DataBinding 核心要点 1、ViewModel 使用要点 2、LiveData 使用要点 3、DataBinding 使用要点 二、ViewModel + LiveData + DataBinding 代码示例 1、ViewModel + LiveData 代码 2、build.gradle 构建脚本 - 启用 DataBinding 3、DataBinding 布局文件 - 配置 ViewModel 类 4、Activity 系统组件代码 - 加载 DataBinding 布局 / 布局配置 ViewModel 对象 / 设置 LiveData 观察者 5、执行结果

2023-04-27

BaseObservable 实现数据模型 Model 与视图 View 双向绑定

BaseObservable 实现数据模型 Model 与视图 View 双向绑定

2023-04-18

DataBinding 架构组件 ④

【Jetpack】DataBinding 架构组件 ④ ( 使用 @BindingAdapter 注解为布局组件绑定自定义逻辑 | 网络图片加载 | 本地图片加载 ) https://blog.csdn.net/shulianghan/article/details/130043460 一、@BindingAdapter 注解 1、注解简介 2、使用 @BindingAdapter 注解为布局组件绑定自定义逻辑 二、使用 @BindingAdapter 注解绑定加载网络图片静态方法 三、使用 @BindingAdapter 注解绑定加载本地图片静态方法 四、使用 @BindingAdapter 注解绑定加载网络图片或本地图片静态方法 五、完整代码示例 1、build.gradle 构建脚本 2、AndroidManifest.xml 清单文件 3、DataBinding 布局文件 4、BindingAdapter 注解类 5、MainActivity 组件 6、执行结果

2023-04-18

DataBinding 架构组件 ③

【Jetpack】DataBinding 架构组件 ③ ( 使用 include 导入二级界面布局 | 二级页面绑定数据模型 ) https://hanshuliang.blog.csdn.net/article/details/129899735 一、使用 include 导入二级界面布局 二、二级页面绑定数据模型 1、将二级界面布局转为 DataBinding 布局 2、在主布局中为二级界面布局传递数据模型 三、核心代码示例 1、主布局 2、子布局 3、Java 代码 4、执行结果

2023-04-04

DataBinding 架构组件 ② - DataBinding 布局中使用 import 标签导入 Java、Kotlin 类

【Jetpack】DataBinding 架构组件 ② ( 字符串拼接函数 | 绑定点击事件函数 | DataBinding 布局中使用 import 标签导入 Java、Kotlin 类 ) https://hanshuliang.blog.csdn.net/article/details/129773150 一、字符串拼接函数 二、绑定点击事件函数 三、DataBinding 布局中使用 import 标签导入 Java、Kotlin 类 1、DataBinding 布局中使用 import 标签导入 Java 类 2、DataBinding 布局中使用 import 标签导入 Kotlin 类 四、完整代码示例 1、数据类 2、导入的 Java 类 3、导入的 Kotlin 类 4、DataBinding 布局文件 5、Activity 组件类

2023-03-26

DataBinding 架构组件

【Jetpack】DataBinding 架构组件 ( 数据绑定技术简介 | Android 中的 DataBinding 数据绑定 | 启动数据绑定 | 定义数据类 | 布局文件转换 ) https://hanshuliang.blog.csdn.net/article/details/129762717 博客源码快照 一、数据绑定技术简介 二、Android 中的 DataBinding 数据绑定技术 三、Android 中的 DataBinding 代码示例 1、build.gradle 构建脚本 - 启动数据绑定 2、定义数据类 3、布局文件转换 4、Activity 组件设置数据绑定布局和数据 5、显示效果 ———————————————— 版权声明:本文为CSDN博主「韩曙亮」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。 原文链接:https://blog.csdn.net/shulianghan/article/details/129762717

2023-03-25

JetpackLiveData 架构组件

【Jetpack】LiveData 架构组件 ( LiveData 简介 | LiveData 使用方法 | ViewModel + LiveData 示例 ) https://hanshuliang.blog.csdn.net/article/details/129411132 博客源码示例 一、LiveData 简介 二、LiveData 使用方法 三、ViewModel + LiveData 简单示例 1、ViewModel + LiveData 代码 2、Activity 组件代码 3、运行效果展示 四、ViewModel + LiveData + Fragment 通信示例 1、ViewModel + LiveData 代码 2、Activity 组件代码 Activity 代码 布局文件 3、Fragment 代码 第一个 Fragment 代码 第一个 Fragment 布局文件 第二个 Fragment 代码 第二个 Fragment 布局文件 4、运行效果展示

2023-03-12

JetpackViewModel 架构组件 博客源码

【Jetpack】ViewModel 架构组件 ( 视图 View 和 数据模型 Model | ViewModel 作用 | ViewModel 生命周期 | 代码示例 | 使用注意事项 ) https://hanshuliang.blog.csdn.net/article/details/129374914 一、Activity 遇到的问题 二、视图 View 和 数据模型 Model 三、ViewModel 架构组件作用 四、ViewModel 代码示例 1、ViewModel 视图模型 2、Activity 组件 3、UI 布局文件 4、运行效果 五、ViewModel 生命周期 六、ViewModel 使用注意事项 ———————————————— 版权声明:本文为CSDN博主「韩曙亮」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。 原文链接:https://blog.csdn.net/shulianghan/article/details/129374914

2023-03-07

博客资料 -JetpackLifeCycle 架构组件

【Jetpack】Lifecycle 架构组件 ( 系统组件与普通组件解耦 | Lifecycle 解耦系统组件与普通组件 | 解耦服务组件与普通组件 | 监听应用程序生命周期 ) https://hanshuliang.blog.csdn.net/article/details/129291874 一、系统组件与普通组件解耦 二、Lifecycle 解耦 Activity 系统组件与 UI 组件 1、传统实现方式 ① Activity 系统组件 ② 布局文件 ③ 执行效果 2、LifeCycle 实现方式 ① 自定义 UI 组件 ② Activity 系统组件 ③ 布局组件 ④ 执行效果 三、LifecycleService 解耦 Service 与 UI 组件 1、构建脚本导入依赖 2、Android Studio 中搜索并添加依赖 3、布局文件属性排序 4、代码实现 ① LifecycleService 组件 ② LifecycleObserver 业务逻辑 ③ AndroidManifest.xml 清单文件 ④ Activity 系统组件

2023-03-03

使用 Jedis 操作 Redis 数据库 博客代码示例

【Redis】使用 Jedis 操作 Redis 数据库 ② ( Jedis API 规律 | Redis 命令与 Jedis 函数名称基本一致 | Jedis API 使用示例 ) https://hanshuliang.blog.csdn.net/article/details/129128393 博客代码示例

2023-02-20

Redis 数据库 安装、配置、访问资源

【Redis】Redis 数据库 安装、配置、访问 ( Redis 简介 | 下载 Redis 安装包 | 安装 Redis 数据库 | 命令行访问 Redis | 使用可视化工具访问 Redis ) https://hanshuliang.blog.csdn.net/article/details/128945441 博客资源快照 001_Linux安装包 002_Windows安装包 003_可视化工具_Redis Desktop Manager

2023-02-09

开发环境JRE 裁剪 ② ( 裁剪 bin 目录下的 dll 动态库文件 - 压缩 rt.jar 文件 )

【开发环境】JRE 裁剪 ② ( 裁剪 bin 目录下的 dll 动态库文件 | 压缩 rt.jar 文件 ) https://blog.csdn.net/shulianghan/article/details/128711836 博客资源快照

2023-01-17

开发环境JRE 裁剪 ① ( 裁剪 bin 目录下的 dll 动态库文件 )

【开发环境】JRE 裁剪 ① ( 裁剪 bin 目录下的 dll 动态库文件 ) https://hanshuliang.blog.csdn.net/article/details/128703546 资源快照

2023-01-16

【Android OpenCV】Visual Studio 创建支持 OpenCV 库的 CMake 工程 ③ 源码快照

【Android OpenCV】Visual Studio 创建支持 OpenCV 库的 CMake 工程 ③ ( CMake 工程中配置 OpenCV 库文件 | 拷贝 OpenCV 函数库文件 ) https://hanshuliang.blog.csdn.net/article/details/128516414 源码快照 在 Visual Studio 2019 中打开 ; 需要修改 Windows 平台的 OpenCV 函数库 头文件 及 库文件搜索路径 ;

2023-01-02

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除