04-鸿蒙4.0学习之样式装饰器相关
04-鸿蒙4.0学习之样式装饰器
@styles装饰器:定义组件重用样式
/*** @styles装饰器:定义组件重用样式*/
@Entry
@Component
struct StyleUI {@State message: string = '@styles'@Styles commonStyle(){.width(200).height(100).backgroundColor(Color.Gray).margin(5)}build() {Row() {Column() {Text(this.message).fontSize(50).fontWeight(FontWeight.Bold).commonStyle()Button().commonStyle()Image('').commonStyle()Row(){}.commonStyle()}.width('100%')}.height('100%')}
}
// 外部通用样式函数 使用function 关键字 内部样式函数 内部不需要function 内部优先级 > 外部样式
// 弊端:只能写通用样式 不能传参
// @Styles function commonStyle(){
// .width(200)
// .height(100)
// .backgroundColor(Color.Gray)
// }
@Extend 扩展组件样式
/***@Extend 扩展组件样式*/
@Entry
@Component
struct ExtendFun {@State message: string = '@Extend'@State count: number = 0build() {Row() {Column() {Text(this.message).fontSize(50).fontWeight(FontWeight.Bold)Divider()Text('HarmonyOS4.0').sizeColor(40, Color.Blue)Text('第二行').sizeColor(40, 'red')Text('第三行').textStyle(20, "#6699ff")Text('第四行').textStyle(50, Color.Pink)Button(this.count.toString()).btnStyle(()=>{this.count++})}.width('100%')}.height('100%')}
}@Extend(Text) function sizeColor(fs: number, fc: Color | string) {.fontSize(fs).fontColor(fc)
}@Extend(Text) function textStyle(fs: number, fc: Color | string) {.sizeColor(fs, fc).fontStyle(FontStyle.Italic).fontWeight(FontWeight.Bold)
}@Extend(Button) function btnStyle(click:()=>void) {.fontSize(40).width(150).height(50).onClick(()=>{click()})
}
多态样式
/*** 多态样式*/
@Entry
@Component
struct StateStyleFun {@State message: string = 'stateStyles()'build() {Row() {Column() {Button(this.message).fontSize(50).fontWeight(FontWeight.Bold).stateStyles({normal: {.backgroundColor(Color.Red)},focused: {.backgroundColor(Color.Pink)},pressed: {.backgroundColor(Color.Blue)}})}.width('100%')}.height('100%')}
}
相关文章:
04-鸿蒙4.0学习之样式装饰器相关
04-鸿蒙4.0学习之样式装饰器 styles装饰器:定义组件重用样式 /*** styles装饰器:定义组件重用样式*/ Entry Component struct StyleUI {State message: string stylesStyles commonStyle(){.width(200).height(100).backgroundColor(Color.Gray).marg…...
C# 线程(1)
目录 1 线程与进程2 创建线程3 线程等待4 线程优先级5 前台线程与后台线程6 Lock与线程安全7 Monitor8 死锁9 线程中异常处理 1 线程与进程 进程是计算机概念,一个程序运用时占用的的所有计算机资源(CPU、内存、硬盘、网络)统称为进程。 线程…...
冒泡排序以及改进方案
冒泡排序以及改进方案 介绍: 冒泡排序属于一种典型的交换排序(两两比较)。冒泡排序就像是把一杯子里的气泡一个个往上冒一样。它不断比较相邻的元素,如果顺序不对就像水泡一样交换它们的位置,直到整个序列像水泡一样…...
QTextEdit 是 Qt 框架中的一个类,用于显示和编辑多行文本内容的可编辑部件
QTextEdit 是 Qt 框架中的一个类,用于显示和编辑多行文本内容的可编辑部件。 QTextEdit 提供了一个用于显示和编辑富文本(包括格式化文本、图像和链接等)和纯文本的文本编辑器。它支持基本的文本操作(如复制、粘贴、撤销、重做等…...
vue+jsonp编写可导出html的模版,可通过外部改json动态更新页面内容
效果 导出后文件结果如图所示,点击Index.html即可查看页面,页面所有数据由report.json控制,修改report.json内容即可改变index.html展示内容 具体实现 1. 编写数据存储的json文件 在index.html所在的public页面新建report.json文件ÿ…...
查看各ip下的连接数
netstat -n | awk /^tcp/ {print $5} | awk -F: {print $1} | sort | uniq -c| sort -rn netstat -n:显示所有的网络连接,不包括任何服务名的解释。awk /^tcp/ {print $5}:使用awk命令过滤出tcp协议的连接,并打印出每个连接的第五…...
Linux—进程状态
目录 一.前言 1.1.通过系统调用获取进程标示符 1.2.通过系统调用创建进程 二.进程状态 三.Z(zombie)-僵尸进程 四.僵尸进程危害 一.前言 学习进程的状态,我们首先了解一下进程的基本数据 1.1.通过系统调用获取进程标示符 由getpid()…...
万宾科技可燃气体监测仪科技作用全览
燃气管网在运行过程中经常会遇到燃气管道泄漏的问题,燃气泄漏甚至会引起爆炸,从而威胁人民的生命和财产安全,因此对燃气管网进行定期巡检是十分必要的工作。但是传统的人工巡检已不能满足城市的需要,除了选择增加巡检人员之外&…...
Python与GPU编程快速入门(三)
3、使用Numba加速Python代码 Numba 是一个 Python 库,它使用行业标准 LLVM 编译器库在运行时将 Python 函数转换为优化的机器代码。 您可能想尝试用它来加速 CPU 上的代码。 然而,Numba还可以将Python 语言的子集转换为CUDA,这就是我们将在这里使用的。 所以我们的想法是,…...
praseInt 和 逻辑或连用
这是做项目时遇到json文件转换 的一个小坑 将json 对象中的值 由字符串(数字字符串) 转换为 数值类型,如果是 转换失败 ,就返回 -1 这里的 parseInt 看起来非常简洁,但是存在一个小坑 transformedData[fieldsToCheck[i]] parseInt(origina…...
对属于国家秘密的地理信息的获取、持有、提供、利用情况进行登记并长期保存,实行可追溯管理
对属于国家秘密的地理信息的获取、持有、提供、利用情况进行登记并长期保存,实行可追溯管理 数据记录(包括获取、持有、提供、利用、销毁等全闭环)...
XAER_RMERR: Fatal error occurred in the transaction branch异常解决
XAER_RMERR: Fatal error occurred in the transaction branch异常解决 数据库权限问题!!!不是mysql驱动问题,执行下面命令解决 GRANT XA_RECOVER_ADMIN ON *.* TO root% ;...
Redis面试常见问题
Redis中的Lua脚本到底能不能保证原子性? Redis中Lua脚本的执行,可以保证并发编程中不可再拆分的这个原子性,但是没有保证数据库ACID中要么都执行要么都回滚的这个原子性。Lua脚本执行过程中命令产生错误,是不会回滚的,…...
浏览器触发下载Excel文件-Java实现
目录 1:引入maven 2:代码实现 3.导出通讯录信息到Excel文件 4.生成并下载Excel文件部分解释 1:引入maven 添加依赖:首先,在你的项目中添加EasyExcel库的依赖。你可以在项目的构建文件(如Maven的pom.xml)中添加以下依赖项:<dependency><groupId>com.alib…...
每日汇评:黄金在上涨趋势恢复之前面临修正性回调的风险
周三早些时候,金价触及六个月来的最高水平,接近 2050 美元; 在美联储转向鸽派立场后,美元和美债双双下跌; 日线图上的超买RSI指标警示多头,但即将到来的金十字图形使上行保持不变; 金价在周三亚…...
【开源】基于Vue.js的大学计算机课程管理平台的设计和实现
项目编号: S 028 ,文末获取源码。 \color{red}{项目编号:S028,文末获取源码。} 项目编号:S028,文末获取源码。 目录 一、摘要1.1 项目介绍1.2 项目录屏 二、功能模块2.1 实验课程档案模块2.2 实验资源模块2…...
c++环形队列
c环形队列 c环形队列 c环形队列 #pragma once#include <iostream> #include <vector>/// <summary> /// - 环形队列 /// - 不是线程安全 /// </summary> /// <typeparam name"T"></typeparam> template <typename T> cla…...
智能客服核心技术——预测会话与答案生成
1.信息检索 2. 句型模板匹配标准问题生成答案 3.根据知识图谱推理得到答案...
C语言——计算Fibonacci数列
方式一 for循环 (20位) #define _CRT_SECURE_NO_WARNINGS 1#include<stdio.h> int main() {int n;int a[20]{1,1};for ( n 1; n <20; n){a[n]a[n-2]a[n-1];}for ( n 0; n < 20; n){if(n%50)printf("\n");printf("%12d ",a[n]);}return 0; …...
【ASP.NET CORE】.NET 6.0 NET CORE MVC连接SQLSERVER数据库
项目装NuGet包,具体版本如下 在appsettings.json中,添加连接字符串 代码如下: "ConnectionStrings": {"MVCSqlContext": "Serverlocalhost;DatabaseAddress;User IDsa;Passwordsa;TrustServerCertificatetrue&q…...
OLLAMA部署本地大模型新选择:LFM2.5-1.2B-Thinking支持思维链可视化输出
OLLAMA部署本地大模型新选择:LFM2.5-1.2B-Thinking支持思维链可视化输出 1. 模型简介:口袋里的AI大脑 LFM2.5-1.2B-Thinking是一个专门为设备端部署设计的智能文本生成模型,它在保持小巧体积的同时,提供了令人惊喜的智能水平。这…...
如何永久保存微信聊天记录?这个免费工具让你轻松备份和分析所有对话![特殊字符]
如何永久保存微信聊天记录?这个免费工具让你轻松备份和分析所有对话!🚀 【免费下载链接】WeChatMsg 提取微信聊天记录,将其导出成HTML、Word、CSV文档永久保存,对聊天记录进行分析生成年度聊天报告 项目地址: https:…...
如何高效使用Dism++:Windows系统优化与管理的终极指南
如何高效使用Dism:Windows系统优化与管理的终极指南 【免费下载链接】Dism-Multi-language Dism Multi-language Support & BUG Report 项目地址: https://gitcode.com/gh_mirrors/di/Dism-Multi-language Dism是一款功能强大的Windows系统优化工具&…...
Phi-4-mini-reasoning保姆级教程:从零配置Ubuntu服务器到Gradio界面可用
Phi-4-mini-reasoning保姆级教程:从零配置Ubuntu服务器到Gradio界面可用 1. 准备工作 在开始之前,我们需要准备好以下内容: 一台运行Ubuntu 22.04 LTS的服务器(建议至少16GB内存)NVIDIA显卡(建议RTX 409…...
数字信号完整性分析:眼图原理与应用详解
1. 眼图基础概念解析眼图(Eye Diagram)是数字信号完整性分析中最重要的工具之一。作为一名硬件工程师,我几乎每天都会用到眼图来分析高速信号的传输质量。简单来说,眼图就是将大量数字信号波形叠加在一起形成的图形,因…...
STM32驱动MMA7361加速度传感器工程实践
1. MMA7361加速度传感器驱动库技术解析:面向STM32 Nucleo-F401RE平台的工程化实现1.1 项目定位与工程价值MMA7361是一款由Freescale(现NXP)推出的低成本、低功耗、三轴模拟输出加速度传感器,广泛应用于姿态检测、振动监测、跌落保…...
为机械臂视觉抓取铺路:在ROS Melodic环境下,一步步配置YOLOv5的Python和PyTorch依赖
为机械臂视觉抓取铺路:在ROS Melodic环境下配置YOLOv5的Python和PyTorch依赖 机械臂视觉抓取是当前工业自动化和机器人研究的热点领域,而YOLOv5作为目标检测的利器,能够为机械臂提供精准的物体定位信息。但在实际部署中,开发者常…...
大卫小东(Sheldon)氯
Issue 概述 先来看看提交这个 Issue 的作者是为什么想到这个点子的,以及他初步的核心设计概念。?? 本 PR 实现了 Apache Gravitino 与 SeaTunnel 的集成,将其作为非关系型连接器的外部元数据服务。通过 Gravitino 的 REST API 自动获取表结构和元数据&…...
【MATLAB源码-第415期】基于MATLAB的等效电路与电热耦合的锂离子电池CC-CV充电控制、SOC估计及BMS保护与故障诊断仿真
操作环境:MATLAB 2024a1、算法描述基于等效电路与电热耦合的锂离子电池CC-CV充电控制及BMS保护仿真研究摘要锂离子电池作为电动汽车、储能系统与便携式电子设备中的核心储能单元,其充电过程不仅关系到能量补给效率,还直接影响安全性、寿命保持…...
EnOcean BLE设备轻量级解析库设计与实现
1. 项目概述EnOceanBleDevices 是一个面向嵌入式平台的轻量级 BLE 协议栈扩展库,专为集成 EnOcean 自供电 BLE 设备而设计。其核心目标并非替代标准 BLE 协议栈(如 ESP-IDF 的 NimBLE 或 Bluedroid),而是构建在底层 BLE 扫描能力之…...
