RED

Flutter学习笔记(38)--自定义控件之组合控件

ε祈祈猫儿з 提交于 2020-08-11 02:44:25
如需转载,请注明出处: Flutter学习笔记(38)--自定义控件之组合控件 在开始之前想先写点其他的,emm...就是今天在学习到自定义控件的时候,由于自定义控件这块一直是我的短板,无论是Android原生开发还是Flutter,对我来说都是致命伤,内心深处不知道为什么就是很抵触...学着学着就突然感觉特烦躁, 不知道自己现在学这些有什么用,有什么意义,工作中的项目也用不上,年前换工作的时候,去快手面过Flutter的岗位,很遗憾二面没有通过,我自己也不死心,想好好准备准备再去试一下,也算是自己的一个小目标吧。 梦想总是要有的,万一不小心实现了呢!随便发几句牢骚,平复下心情,革命尚未成功,同志仍需努力!按照计划一步一步来吧! ---------------------------------------------------------- 正文 ------------------------------------------------------------- Flutter中的自定义控件其实和Android中的很类似,都有组合控件、自绘控件。 组合控件就是将通用的控件封装起来,其内部由多个小控件组合起来实现的,比如说公用的title栏,其实和我们平时写页面的时候没什么区别。 自绘控件就是继承RenderObjectWidget

c# winForm DotNetBar控件之SuperGridControl

断了今生、忘了曾经 提交于 2020-08-11 02:24:30
1.添加表头 sgc.PrimaryGrid.SelectionGranularity = SelectionGranularity.Row; // 点击选中一行 DevComponents.DotNetBar.SuperGrid.GridColumn gc = null ; gc = new DevComponents.DotNetBar.SuperGrid.GridColumn( " ID " ); sgc.PrimaryGrid.Columns.Add(gc); gc = new DevComponents.DotNetBar.SuperGrid.GridColumn( " 类型编码 " ); sgc.PrimaryGrid.Columns.Add(gc); 2.添加数据 加一行 sgc.PrimaryGrid.Rows.Add( new GridRow( new object [] { " a " , " b " })); //也就是加一个GrindRow对像 3.设点击选中一行后 取第一行第一列的值 SelectedElementCollection col = sgc.PrimaryGrid.GetSelectedRows(); // 选中的行集合 if (col.Count > 0 ) { GridRow gr = (col[ 0 ] as GridRow); //

《Web前端技术H5+CSS3》笔记--第四章 初识CSS3[云图智联]

旧街凉风 提交于 2020-08-11 01:24:49
1.1 CSS概述 1.1.1 什么是CSS HTML 标签原本被设计为用于定义文档内容。通过使用 h1、p、table 这样的标签,HTML 的初衷是表达“这是标题”、“这是段落”、“这是表格”之类的信息。同时文档布局由浏览器来完成,而不使用任何的格式化标签。 由于两种主要的浏览器(Netscape 和 Internet Explorer)不断地将新的 HTML 标签和属性(比如字体标签和颜色属性)添加到 HTML 规范中,创建文档内容清晰地独立于文档表现层的站点变得越来越困难。 为了解决这个问题,万维网联盟(W3C),这个非营利的标准化联盟,肩负起了 HTML 标准化的使命,并在 HTML 4.0 之外创造出样式(Style)。 CSS全称为层叠样式表(Cascading Style Sheet),通常又称为风格样式表(Style Sheet),它是用来进行网页风格设计的。 所有的主流浏览器均支持层叠样式表例如:图片和文本使用了CSS混排效果,非常漂亮,并且很清晰,这就是一种风格。 1.1.2 CSS在网页中的应用 样式表定义如何显示 HTML 元素,就像 HTML 3.2 的字体标签和颜色属性所起的作用那样。样式通常保存在外部的 .css 文件中。通过仅仅编辑一个简单的 CSS 文档,外部样式表使你有能力同时改变站点中所有页面的布局和外观。

选择器的基本规则及使用

一笑奈何 提交于 2020-08-11 01:07:19
【基本选择器】 1、通配符选择器 书写格式:* {声明块} 功能:所有标签,都应用其样式 适用场景:统一样式 注:一般不建议使用此选择器。 2、元素选择器 3、类选选择器 类选选择器命名规范 1点号开始 2包含字母 数字 下划线 连字符 3点后面必须是字母 4区分大小写 命名规范要求:见名知意 4.ID选择器(JS之前不要用 预留给JS 书写格式:#ID{声明块}) 5.组合选择器/并集选择器 书写格式:元素名,ID名,类名{声明块} h1,p,span{ color:red; } /* 【层次选择器】 1.子级选择器 书写格式:父元素A>子元素B{声明块} article>section{ color: yellow; } 2.后代选择器 书写格式:祖先元素A+空格+后代元素B{声明块} article p{ color:skyblue; } 3.兄弟选择器 书写格式:兄弟元素A+兄弟元素B{声明块} 注:AB之间不能有其他元素 h1+p{ color: skyblue; } 4.通用选择器 书写格式:兄弟元素A+~+兄弟元素B{声明块} h1~p { color: yellowgreen; } 【伪类选择器】 [结构伪类选择器] 1 选中某一个元素 书写格式 元素A:nth-child(n) nth-child(序数词) header>nav:nth-child(3) {

【数据结构】 & 一篇搞定

谁说胖子不能爱 提交于 2020-08-10 22:06:13
前言:之前更新了最实用的一些算法demo,结束之后本篇准备以入门的姿态讲下数据结构,方便更好的理解一些基础代码,以及原理情况 希望这篇可以帮你理解数据结构的大部分内容 数据结构 1. 栈(stack) 栈(stack)是限制插入和删除只能在一个位置上进行的表,该位置是表的末端,叫做栈顶 (top)。 它是后进先出(LIFO)的。对栈的基本操作只有 push(进栈)和 pop(出栈)两种, 前者相当于插入,后者相当于删除最后的元素。 我们常用的叫法有 加载->进栈,压栈 || 释放->出栈,弹栈 2. 队列(queue) 队列是一种特殊的线性表,特殊之处在于它只允许在表的前端(front)进行删除操作,而在表的 后端(rear)进行插入操作,和栈一样,队列是一种操作受限制的线性表。进行插入操作的端称为 队尾,进行删除操作的端称为队头。 3. 链表(Link) 链表是一种数据结构,和数组同级。比如,Java 中我们使用的 ArrayList,其实现原理是数组。而 LinkedList 的实现原理就是链表了。链表在进行循环遍历时效率不高,但是插入和删除时优势明显。 具体又分为: 单链表,双链表,循环列表 4. 散列表(Hash Table) 散列表(Hash table,也叫哈希表)是一种查找算法,与链表、树等算法不同的是,散列表算法 在查找时不需要进行一系列和关键字

Fedora 33 开始测试切换到 Btrfs

╄→尐↘猪︶ㄣ 提交于 2020-08-10 22:00:57
尽管距离 Fedora 的下一个稳定版本( Fedora 33 )还有几个月的距离,但仍有一些值得关注的变化。 在所有其他 Fedora 33 接受的系统范围的更改 中,最有趣的提议是将 Btrfs 作为桌面的默认文件系统,这个提议现在已经被批准了。 这是 Fedora 对该提案的评价: 对于安装 Fedora 的笔记本电脑和工作站,我们希望以透明的方式向用户提供文件系统功能。我们希望添加新功能,同时减少处理磁盘空间不足之类的情况所需的专业知识。Btrfs 它的设计理念非常适合这个角色,让我们将其设为默认设置。 值得注意的是,在测试的最终投票结果出来之前,这不是系统范围内的更改。 但是,现在测试已经成功完成,投票结果也是赞成的 —— Fedora 33 版本已经接受了这个改动。 那么,为什么 Fedora 提出这一更改?这会有什么用么?这是糟糕的举动吗?对 Fedora 的发行有何影响?让我们在这里谈论下。 它会影响哪些 Fedora 版本? 根据提议,如果测试成功,那么 Fedora 33 的所有桌面版本、spins 和 labs 都受此影响。 因此,你可以期望 工作站版本 将 Btrfs 作为 Fedora 33 上的默认文件系统。 实施此更改的潜在好处 为了改进 Fedora 在笔记本和工作站的使用,Btrfs 文件系统提供了一些好处。 现在 Fedora 33

001.OpenShift介绍

烂漫一生 提交于 2020-08-10 19:59:08
一 OpenShift特性 1.1 OpenShift概述 Red Hat OpenShijft Container Platform (OpenShift)是一个容器应用程序平台,它为开发人员和IT组织提供了一个云应用程序平台,用于在安全的、可伸缩的资源上部署新应用程序,而配置和管理开销最小。 OpenShift构建于Red Hat Enterprise Linux、Docker和Kubernetes之上,为当今的企业级应用程序提供了一个安全且可伸缩的多租户操作系统,同时还提供了集成的应用程序运行时和库。 OpenShift带来了健壮、灵活和可伸缩的特性。容器平台到客户数据中心,使组织能够实现满足安全性、隐私性、遵从性和治理需求的平台。不愿意管理自己的OpenShift集群的客户可以使用Red Hat提供的公共云平台OpenShift Online。 1.2 OpenShift特性 OpenShift容器平台和OpenShift Online都是基于OpenShift Origin开源软件项目的,该项目本身使用了许多其他开源项目,如Docker和Kubernetes。 应用程序作为容器运行,容器是单个操作系统内的隔离分区。容器提供了许多与虚拟机相同的好处,比如安全性、存储和网络隔离,同时需要的硬件资源要少得多,启动和终止也更快

Asp.net Core 3.1 Razor视图模版动态渲染PDF

独自空忆成欢 提交于 2020-08-10 17:43:04
Asp.net Core 3.1 Razor视图模版动态渲染PDF 前言 最近的线上项目受理回执接入了电子签章,老项目一直是html打印,但是接入的电子签章是仅仅对PDF电子签章,目前还没有Html电子签章或者其他格式文件的电子签章。首先我想到的是用一个js把前端的html转换PDF,再传回去服务器电子签章。但是这个样子就有一个bug,用户可以在浏览器删改html,这样电子签章的防删改功能就用不到,那么电子签章还有啥意义?所以PDF签章前还是不能给用户有接触的机会,不然用户就要偷偷干坏事了。于是这种背景下,本插件应运而生。我想到直接把Razor渲染成html,html再渲染成PDF。 该项目的优点在于,可以很轻松的把老旧项目的Razor转换成PDF文件,无需后台组装PDF,如果需要排版PDF,我们只需要修改CSS样式和Html代码即可做到。而且我们可以直接先写好Razor视图,做到动态半可视化设计,最后切换一下ActionResult。不必像以前需要在脑海里面设计PDF板式,并一次一次的重启启动调试去修改样式。 2.依赖项目 本插件 支持net45,net46,core的各个版本,(我目前仅仅使用net45和core 3.1.对于其他版本我还没实际应用,但是稍微调整都是支持的,那么简单来说就是支持net 45以上,现在演示的是使用Core3.1)。 依赖插件 Haukcode

(基础篇)浅析JAVA中的栈和堆

老子叫甜甜 提交于 2020-08-10 16:32:32
若为生活所迫,做了自己不喜欢做的事。却没有达到自己预期想要的结果,那么何必强迫自己,苦恼这一世。不如转而做自己喜欢的事,哪怕像我一样从头开始。 一、概念 【老生常谈】 对于刚接触计算机,没几年的我来说,好多老生常谈的概念对我而言都很新鲜。下面的概念也不例外。 他们说对学计算机的而言,堆栈是一个不容忽视的概念。 1、堆栈是两种数据结构,只能在一端对数据项进行插入和删除。 2、在单片机应用中,堆栈是个特殊的存储区,主要是暂时存放数据和地址。 3、堆,队列优先,先进先出 4、栈,先进后出 【java中堆栈的概念】 【比较】 1、栈(stack)与堆(heap)都是java用来在内存中存放数据的地方。 2、java自动管理栈堆,程序员不需要理会(与C++不同)。 3、栈,存储速度比堆快,仅次于CPU中的寄存器。缺点是,大小和生命周期是确定的缺少灵活性。 4、栈数据在多线程或者多个栈之间是不可以共享的 5、栈内部的多个值相等的变量是可以指向同一个地址的。 6、堆的优势可以动态的分布内存的大小,生命周期也是动态的。 7、java垃圾收集器会自动的收走不在使用的堆数据。 8、堆缺点是,要在运行时动态分配内存,存取速度较慢。 二、java中的数据类型 1、基本类型,8种:int、short、 long、 byte、 float、 double、 boolean、 char 例如:int Red

CSS:浮动(左浮动、右浮动)

岁酱吖の 提交于 2020-08-10 16:31:19
1、标准流(普通流/文档流) 标准流就是标签按照规定好的默认方式排列 (1)块级元素会独占一行,按照从上到下的方式排列 (2)行内元素会按照顺序,从左到右的顺序进行排列,遇到父元素则自动换行 (3)纵向排列标准流,横向排列用浮动 2、浮动的简单应用 (1)让多个块级元素水平排列在一行(这里将行内元素转换为了块级元素) <! DOCTYPE html > < html > < head > < meta charset ="utf-8" /> < title > test </ title > < style type ="text/css" > .myclass1{ background-color: red; width: 100px; height: 200px; display:inline-block; } .myclass2{ background-color:black; width: 100px; height: 200px; display:inline-block; } .myclass3{ background-color: red; width: 100px; height: 200px; display:inline-block; } </ style > </ head > < body > < span class ="myclass1" > 1 </