自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(150)
  • 收藏
  • 关注

原创 DeepSeek接入chatDev实现 智能编程

ChatDev 是一个基于大型语言模型(如 GPT)的虚拟软件开发团队模拟器。它通过模拟软件开发团队中的不同角色(如程序员、测试员、设计师等),利用 AI 驱动的角色之间的对话和协作,来完成软件开发任务。ChatDev 的目标是探索如何通过 AI 模拟团队协作,自动生成代码、测试和文档等。。

2025-03-06 14:04:50 241

原创 鸿蒙网络管理(1):Network Kit(网络服务)

method: http.RequestMethod.POST, // 可选,默认为http.RequestMethod.GET// 开发者根据自身业务需要添加header字段// 当使用POST请求时此字段用于传递请求体内容,具体格式与服务端协商确定expectDataType: http.HttpDataType.STRING, // 可选,指定返回数据的类型usingCache: true, // 可选,默认为truepriority: 1, // 优先级 可选,默认为1。

2025-03-06 14:03:41 37

原创 开发基础(8):鸿蒙图表开发

mpchart是一个包含各种类型图表的图表库,主要用于业务数据汇总,例如销售数据走势图,股价走势图等场景中使用,方便开发者快速实现图表UI,mpchart主要包括线形图、柱状图、饼状图、蜡烛图、气泡图、雷达图、瀑布图等自定义图表库。

2025-02-14 19:47:45 352

原创 ArkUI性能优化(0)—DevEco Profiler调优工具

无需关注数据采集细节,分析启动、卡顿、耗时、内存、能耗等场景问题。

2024-12-19 11:12:49 471

原创 开发基础(6):一文看懂鸿蒙里面的所有生命周期

自定义组件的创建:自定义组件的实例由ArkUI框架创建。初始化自定义组件的成员变量:通过本地默认值或者构造方法传递参数来初始化自定义组件的成员变量,初始化顺序为成员变量的定义顺序。如果开发者定义了aboutToAppear,则执行aboutToAppear方法。在首次渲染的时候,执行build方法渲染系统组件,如果子组件为自定义组件,则创建自定义组件的实例。在首次渲染的过程中,框架会记录状态变量和组件的映射关系,当状态变量改变时,驱动其相关的组件刷新。

2024-12-19 11:12:25 248

原创 开发基础(4):鸿蒙如何实现一键复制(剪切板功能)

mimeType可以选择:也可以自定义。

2024-12-18 11:15:43 78

原创 开发基础(5):Promise 异步与同步 async和await

有过异步和同步的基础,但是因为用的实在太少了,在实际开发中总是会忽略这个,进而造成问题。

2024-12-18 11:15:06 174

原创 开发基础(3):开发应用沉浸式效果 & 组件安全区方案

典型应用全屏窗口UI元素包括状态栏应用界面和底部导航条,其中状态栏和导航条,通常在沉浸式布局下称为避让区;避让区之外的区域称为安全区。开发应用沉浸式效果主要指通过调整状态栏、应用界面和导航条的显示效果来,从而使用户获得最佳的UI体验。即当应用的界面背景色和系统界面不一致时,未开启沉浸式效果,状态栏和导航栏的背景色就会和应用界面的颜色不一致,造成突兀感。

2024-12-05 16:41:03 347

原创 开发基础(1):一次开发,多端部署

自适应布局:屏幕变化时,界面位置关系未发生变化;元素自适应拉伸响应式布局:屏幕变化时,界面位置关系发生变化。

2024-12-05 16:40:57 45

原创 状态管理(8)—合理使用状态管理的建议

在实际开发中,合理选择装饰器主要包含以下三步:1.首先根据状态需要共享的范围大小,尽量选择共享能力小的装饰器方案,优先级依次为@State+@Prop、@State+@Link或@State+@Observed+@ObjectLink > @Provide+@Consume > LocalStorage > AppStorage。2.当共享的状态的组件间层级相差较大时,为避免较差的代码可扩展性和可维护性,@Provide+@Consume的方案要优于层层传递的共享方案。

2024-11-07 09:50:28 175

原创 ArkUI性能优化(1)—优化布局性能

不合理的页面布局(如:嵌套层级过多等)会导致加载慢、掉帧等现象,造成不好影响在布局阶段中,如果视图嵌套层级较深,或者页面节点过多,会导致在Measure和layout过程中,通过遍历测量组件大小和边界的时间过长。所以布局性能优化,可以从减少节点数或者优化布局测算时间方面来考虑。

2024-11-07 09:48:34 79

原创 Stage模型开发指导

Ability类型的Module: 用于实现应用的功能和特性。每一个Ability类型的Module编译后,会生成一个以.hap为后缀的文件,我们称其为HAP(Harmony Ability Package)包。HAP包可以独立安装和运行,是应用安装的基本单位,一个应用中可以包含一个或多个HAP包,具体包含如下两种类型。entry类型feature类型Library类型的Module: 用于实现代码和资源的共享。

2024-11-06 11:21:06 460

原创 自定义组件 与 @Component

Component:@Component装饰器仅能装饰struct关键字声明的数据结构。struct被@Component装饰后具备组件化的能力,需要实现build方法描述UI,一个struct只能被一个@Component装饰。@Component可以接受一个可选的bool类型参数。freezeWhenInactive,组件冻结选项,是否开启组件冻结,可选项。struct:自定义组件基于struct实现,struct + 自定义组件名 + {…}的组合构成自定义组件,不能有继承关系。

2024-11-06 11:20:37 771

原创 鸿蒙ArkTS语言学习(五):不常见语法总结

在ArkTS中,定义变量时在类型后面加上“?”表示该变量可以是空值(null或undefined)。这与TypeScript中的类型定义相似,是一种空值合并操作符。它用于声明一个变量,这个变量的类型可以是特定的类型,或者是null。这样的定义通常用于那些可能不被初始化或者可能在某些情况下被赋予null值的变量。// 或者= null;在这个例子中,myVar 可以被赋予一个字符串值,或者被赋予null。

2024-10-29 09:14:59 186

原创 数据懒加载:LazyForEach

LazyForEach从提供的数据源中按需迭代数据,并在每次迭代过程中创建相应的组件。当在滚动容器中使用了LazyForEach,框架会根据滚动容器可视区域按需创建组件,当组件滑出可视区域外时,框架会进行组件销毁回收以降低内存占用。

2024-10-29 09:14:28 93

原创 鸿蒙插件(1)网络请求:鸿蒙axios(@ohos/axios)

使用 OpenSSL 从服务器获取证书并提取消息摘要。

2024-10-28 08:48:20 487

原创 状态管理(4)——@Link装饰器:父子双向同步

子组件中被@Link装饰的变量与其父组件中对应的数据源建立双向数据绑定。@Link装饰的变量与其父组件中的数据源共享相同的值。

2024-10-28 08:47:35 195

原创 状态管理(2)——@State组件内状态

State装饰的变量拥有其所属组件的状态,可以作为其子组件单向和双向同步的数据源。当其数值改变时,会引起相关组件的渲染刷新。@State装饰的变量,或称为状态变量,一旦变量拥有了状态属性,就可以触发其直接绑定UI组件的刷新。当状态改变时,UI会发生对应的渲染改变。在状态变量相关装饰器中,@State是最基础的,使变量拥有状态属性的装饰器,它也是大部分状态变量的数据源。@State装饰的变量,与声明式范式中的其他被装饰变量一样,是私有的,只能从组件内部访问,在声明时必须指定其类型和本地初始化。

2024-10-09 09:17:52 190

原创 状态管理(3)——@Prop父子单向同步

Prop变量允许在本地修改,但修改后的变化不会同步回父组件。当数据源更改时,@Prop装饰的变量都会更新,并且会覆盖本地所有更改。因此,数值的同步是父组件到子组件(所属组件),子组件数值的变化不会同步到父组件。

2024-10-09 09:17:23 112

原创 状态管理(1)——ArkTS状态管理概述

如果希望构建一个动态的、有交互的界面,就需要引入“状态”的概念。在声明式UI编程框架中,UI是程序状态的运行结果,用户构建了一个UI模型,其中应用的运行时的状态是参数。当参数改变时,UI作为返回结果,也将进行对应的改变。这些运行时的,在ArkUI中统称为状态管理机制。

2024-10-08 15:39:50 493

原创 鸿蒙界面开发——组件(10):CalendarPicker&DatePicker&TextPicker(实现三级下拉列表)&TimePicker

日历选择器组件,提供下拉日历弹窗,可以让用户选择日期。

2024-10-08 15:39:23 708

原创 鸿蒙界面开发(七):媒体查询

为什么媒体查询在构建布局这一章呢?

2024-09-26 16:57:17 248

原创 鸿蒙界面开发(九):列表布局 (List)

/ ...

2024-09-26 16:56:45 1705 1

原创 鸿蒙界面开发——组件(9):进度条Progress & 滑动条Slider

其中,value用于设置初始进度值,total用于设置进度总长度,type用于设置Progress样式。说明头尾两端圆弧处的进度展示效果与ProgressType.Eclipse样式相同;中段处的进度展示效果为矩形状长条,与ProgressType.Linear线性样式相似;组件高度大于宽度的时候自适应垂直显示。拓展。

2024-09-25 10:06:53 1191 2

原创 鸿蒙界面开发——组件(10):单选框Radio&复选框checkbox & 下拉框select & 多条件筛选Filter

/ xxx.ets@Entry@Component@Builder//定义自定义结构样式build() {Column() {//设置选中样式类型.width(80)})

2024-09-25 10:06:07 1618

原创 Anaconda安装

第一种下载方式(官网)第二种下载方式(

2024-09-13 16:13:25 407

原创 鸿蒙界面开发——组件(7):组件导航 & 页面路由&Navigation路由的详细实现

here。定义页面跳转配置项。使用资源文件进行定义,通过资源管理@ohos.resourceManager在运行时对资源文件解析。在ets文件中配置路由加载配置项,一般包括路由页面名称(即pushPath等接口中页面的别名),文件所在模块名称(hsp/har的模块名),加载页面在模块内的路径(相对src目录的路径)。

2024-09-10 10:58:38 1860

原创 鸿蒙界面开发——组件(8):图形绘制 & 画布

绘制组件的父组件,父组件中会描述所有绘制组件均支持的通用属性。1、绘制组件使用Shape作为父组件,实现类似SVG的效果。2、绘制组件单独使用,用于在页面上绘制指定的图形。子组件包含Rect、Path、Circle、Ellipse、Polyline、Polygon、Image、Text、Column、Row、Shape子组件。

2024-09-10 10:57:24 920

原创 鸿蒙界面开发——组件(6):属性字符串(StyledString)文本输入

MutableStyledString继承于StyledString,以下统一简称StyledString。是功能强大的标记对象,可用于字符或段落级别设置文本样式。通过将StyledString附加到文本组件, 可以通过多种方式更改文本,包括修改字号、添加字体颜色、使文本可点击以及自定义方式绘制文本等。方便灵活应用文本样式的对象,可通过(Text组件的控制器)中的方法与Text组件绑定,

2024-09-06 09:45:52 1742

原创 鸿蒙界面开发——组件(5):菜单Menu & 绑定菜单

不支持作为普通组件单独使用。Menu 以垂直列表形式显示的菜单。包含MenuItem、MenuItemGroup子组件。布局过程中,期望每个菜单项的宽度一致。若子组件设置了宽度,则以尺寸计算规则为准。不设置宽度的情况:菜单组件会对子组件MenuItem、MenuItemGroup设置默认2栅格的宽度,若菜单项内容区比2栅格宽,则会自适应撑开。设置宽度的情况:菜单组件会对子组件MenuItem、MenuItemGroup设置减去padding后的固定宽度。

2024-09-05 16:22:39 1235

原创 鸿蒙界面开发——组件(3):视频组件video

string | Resource 否 视频的数据源,支持本地视频和网络视频。Resource格式可以跨包/跨模块访问资源文件,常用于访问本地视频。string格式可用于加载网络视频和本地视频,常用于加载网络视频。说明:视频支持的格式是:mp4、mkv、TS。元服务API: 从API version 11开始,该接口支持在元服务中使用。number | string | PlaybackSpeed8+ 否视频播放倍速。

2024-09-04 11:57:37 1831 1

原创 鸿蒙界面开发——组件(4):图标小符号 (SymbolGlyph/SymbolSpan) & 气泡提示Popup

开发者可以使用构建器CustomPopupOptions创建自定义气泡,@Builder中可以放自定义的内容。除此之外,还可以通过popupColor等参数控制气泡样式。// popup构造器定义弹框内容build() {Column() {})builder: this.popupBuilder, // 气泡的内容*******************************placement:Placement.Bottom, // 气泡的弹出位置。

2024-09-04 11:56:56 1215

原创 鸿蒙界面开发——通用属性(1)width&height&margin&padding等尺寸设置

设置组件自身的宽度,缺省时使用元素自身内容需要的宽度。在TextInput组件中,width设置auto表示自适应文本宽度。在AlphabetIndexer组件中,width设置auto表示自适应宽度最大索引项的宽度。在Row、Column、RelativeContainer组件中,width、height设置auto表示自适应子组件。

2024-09-03 16:01:14 891

原创 鸿蒙界面开发——组件(2):文本显示 (Text/Span) &文本输入 (TextInput/TextArea) &显示图片 (Image) & 自定义弹窗 (CustomDialog)

使用@CustomDialog装饰器装饰自定义弹窗。@CustomDialog装饰器用于装饰自定义弹框,此装饰器内进行自定义内容(也就是弹框内容)。})build() {Column() {Text('我是内容')创建构造器,与装饰器呼应相连。@Entry@Component//创建构造器,与装饰器呼应相连。})点击与onClick事件绑定的组件使弹窗弹出。@Entry@Component//创建构造器,与装饰器呼应相连。

2024-09-02 08:24:49 1980

原创 鸿蒙界面开发(12):选项卡布局(Tabs)

对于底部导航栏,一般作为应用主页面功能区分,为了更好的用户体验,会组合文字以及对应语义图标表示页签内容,这种情况下,需要自定义导航页签的样式。设置自定义导航栏需要使用tabBar的参数,以其支持的的方式传入自定义的函数组件样式。例如这里声明tabBuilder的自定义函数组件,传入参数包括页签文字title,对应位置index,以及选中状态和未选中状态的图片资源。通过当前活跃的currentIndex和页签对应的targetIndex匹配与否,决定UI显示的样式。//参数) {//结构。

2024-09-02 08:24:31 1009

原创 鸿蒙界面开发(六):栅格布局

GridRow为栅格容器组件,需与栅格子组件GridCol在栅格布局场景中联合使用。

2024-08-31 11:18:38 1024

原创 鸿蒙界面开发(五):相对布局

相对布局的容器,支持容器内部的子元素设置相对位置关系,适用于界面复杂场景的情况,对多个子组件进行对齐和排列。子元素,基于锚点做相对位置布局。锚点:通过锚点设置当前元素基于哪个元素确定位置。对齐方式:通过对齐方式,设置当前元素是基于锚点的上中下对齐,还是基于锚点的左中右对齐。

2024-08-31 11:18:11 668

原创 鸿蒙界面开发——组件(1):按钮Button&切换按钮Toggle

/ xxx.ets@Entry@Component@Builder//定义自定义结构样式build() {Column() {//设置选中样式类型.width(80)})通过selectedColor属性设置Toggle打开选中后的背景颜色。通过switchPointColor属性设置Switch类型的圆形滑块颜色,仅对type为ToggleType.Switch生效。

2024-08-29 11:27:29 1345

原创 鸿蒙界面开发(11):滚动容器(Scroll)&ScrollBar滚动条组件

当子组件的布局尺寸超过Scroll时,内容可以滚动。

2024-08-28 17:08:02 586

原创 鸿蒙ArkTS语言学习(五):扩展(函数)@Extend&@Styles&@Builder

除了组件、样式、事件外,还可以封装结构。结构的复用。用于封装相似的结构。可以全局也可以局部。//全局自定义构建函数定义的语法:使用方法:如果不涉及组件状态变化,建议使用全局的自定义构建方法。//局部定义的语法:使用方法:@Builder通过按引用传递的方式传入参数,才会触发动态渲染UI,并且参数只能是一个。@Builder如果传入的参数是两个或两个以上,不会触发动态渲染UI。@Builder传入的参数中同时包含按值传递和按引用传递两种方式,不会触发动态渲染UI。

2024-08-28 10:27:46 904

PILImage与opencv的使用区别

主要是因为经常用到这两个,经常弄混淆,所以,总结一番。持续更新。 ```python from PIL import Image import cv2 as cv import numpy as np import matplotlib.pyplot as plt ```

2023-02-13

课程设计二: 题目: 学生成绩管理系统 功能: 实现学生信息管理 包括:录入、查询、排序等功能 C语言

课程设计二: 题目: 学生成绩管理系统 功能: 实现学生信息管理。包括:录入、查询、排序等功能。 要求: 用数据文件保存学生基本信息(学号 姓名 课程1 课程2 课程3…) ,利用菜单可以循环实现各个功能。 进一步要求*: (1) 能够实现增加、删除、修改功能; (2) 能够实现统计功能等。 样例输入: 201824100440 wxh 90 90 90 201824100441 wy 99 99 99 201824100442 wym 98 98 98 201824100445 wxy 87 100 76 201824100444 wkx 78 77 76 201824100447 wpy 90 98 97 追加 201824100443 wwb 90 96 95 201824100448 cmk

2023-02-13

算术表达式求值,使用C语言编写计算器功能

课程设计一: 题目: 算术表达式求值 功能: 输入一个整数算术表达式字符串,分解出数值及运算符,并计算输出结果。 要求: 利用菜单可以循环实现求出加法、减法、乘法、除法算术表达式。 进一步要求*: (1) 能够实现连续运算; 比如:123+233+555+666= (2) 能够实现混合运算; 比如:120-23*5-20/4= (3) 能够实现带括号的混合运算运算。 比如:12*(234-5)+(23+7)= (4) 能够实现实数的各类运算。 比如:12.23*(12-3.7)+12.56= (5) 能够实现多层括号嵌套运算 …(….(..)….(..(…))…)…

2023-02-13

用于paddleseg的数据准备部分的代码

用于paddleseg的数据准备部分的代码,包括三个文件:1、切分;2、创建训练集验证集;3、使用方法。

2023-02-13

空空如也

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

TA关注的人

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