在根目录下创建一个名为utils的文件夹,在文件夹中创建一个localstorage.js文件 export default function tools () { const signSetItem...中引入使用 import storage from '..../utils/locaStorage'; Vue.use(storage); 在需要监听localstorage中数据变化的文件中加以下代码 // 监控locaStorage watchStorage...{ const that = this; window.addEventListener('setItemEvent', function (e) { // 监听setitem的...key ,执行对应的业务逻辑 console.log(e.key, e.value); if (e.key === 'isFullScreen') {
A2:A10中的值,如果相同返回TRUE,不相同则返回FALSE,得到一个由TRUE和FALSE组成的数组,然后与A2:A10所在的行号组成的数组相乘,得到一个由行号和0组成的数组,MAX函数获取这个数组的最大值...,也就是与单元格D2中的值相同的数据在A2:A10中的最后一个位置,减去1是因为查找的是B2:B10中的值,是从第2行开始的,得到要查找的值在B2:B10中的位置,然后INDEX函数获取相应的值。...之所以使用SUMPRODUCT函数,是因为该函数可以处理数组公式,而无须在公式输入完成后按Ctrl+Shift+Enter组合键。 结果如下图2所示。 ?...图2 使用LOOKUP函数 公式如下: =LOOKUP(2,1/($A$2:$A$10=$D$2),$B$2:$B$10) 公式中,比较A2:A10与D2中的值,相等返回TRUE,不相等返回FALSE...组成的数组,由于这个数组中找不到2,LOOKUP函数在数组中一直查找,直至最后一个比2小的最大值,也就是数组中的最后一个1,返回B2:B10中对应的值,也就是要查找的数据在列表中最后的值。
原生控件是由Microsoft提供的内置控件,如Button、TextBox、Label、ComboBox等。这些控件都是WPF中常见的标准用户界面元素。...在代码中,我们可以像访问其他WPF控件一样访问嵌入的WinForms控件。...WindowFormsHost控件拥有以下属性:Child:Windows Forms控件被包含在这个属性中。可以通过编程方式或在设计时设置。...3.具体案例WindowFormsHost控件用于在WPF的窗口中嵌入WinForms控件,可以方便地在WPF应用程序中使用WinForms控件。...以下是一个简单的案例,展示如何在WPF窗口中嵌入WinForms控件,以及在WinForms控件中使用WPF控件。在Visual Studio中创建一个WPF应用程序。
我们想要一个能将键(key)映射到多个值的字典(即所谓的一键多值字典[multidict])。 解决方案 字典是一种关联容器,每个键都映射到一个单独的值上。...如果想让键映射到多个值,需要将这多个值保存到另一个容器(列表、集合、字典等)中。..., defaultdict 会自动为将要访问的键(即使目前字典中并不存在这样的键)创建映射实体。...如果你并不需要这样的特性,你可以在一个普通的字典上使用 setdefault() 方法来代替。...因为每次调用都得创建一个新的初始值的实例(例子程序中的空列表 [] )。 讨论 一般来说,构建一个多值映射字典是很容易的。但是如果试着自己对第一个值做初始化操作,就会变得很杂乱。
并且只在 ComboBox 中显示 Name 属性和 DisplayMemberPath 属性)。...一个很好的例子是在标准 WinForms 中处理鼠标按钮的 onClick 事件。 这是在 GUI 项中引发事件并由所述 GUI 元素处理的地方。...例如,假设有一个包含面板的窗口,在该面板内有一个Grid,在Grid内有一个TextBox。...当设置依赖属性的值时,它不会存储在对象的字段中,而是存储在基类 DependencyObject 提供的键和值字典中。 条目的键是属性的名称,值是您要设置的值。...当设置依赖属性的值时,它不会存储在对象的字段中,而是存储在基类 DependencyObject 提供的键和值字典中。 条目的键是属性的名称,值是您要设置的值。
3-3 文件读写例子 u本节学习目标: n学习通过文件流FileStream打开文本文件、写入文本文件、设置文件属性、实施对文件的目录操作管理的基本方法 n学习文件对话框的基本操作方法 n学习通过文件流...FileStream获取用户选择文件夹及文件夹信息;获取用户选择文件信息; n学习通过文件流FileStream建立一个新的文本文件,重新写文本信息流,如何在C#中定义文件和文件夹 n学习文件流的资源释放意义以及释放资源的基本顺序...3-3-1 案例学习:文件流FileStream综合案例(一) 本次实验目标是通过一个窗体,如图3-7所示,在点击相应按钮控件时,可以完成对文件的读写操作、磁盘操作以及对目录的管理操作。...控件,text属性设置为“写入类型选择:”,Items属性中添加“创建空文本文件”、“添加入文本文件”、“新写入文本文件”;再向第二个GroupBox控件拖拽二个Button控件,text属性分别设置为...“写入文件”、“读出文件”;向第三个GroupBox控件拖拽一个ComboBox控件,text属性设置为“文件磁盘操作选择:”,Items属性中添加“文件创建”、“文件删除”、“文件复制”、“文件移动”
1.1 ComboBox首先我们来实现一个简单的联动效果,数据库组件可以与ComboBox组件形成多级联动效果,在日常开发中多级联动效果应用非常广泛,例如当我们选择指定用户时,让其在另一个ComboBox...这个方法的目的是告诉模型某一列的值在另一个表中有关联,并提供相关的信息,以便在视图中显示更有意义的数据而不是外键的原始值。...第二列(索引为2的列)的数据将从名为 "customers" 的表中获取,该表的外键列为 "customer_id",并且在视图中显示的是该关联表的 "customer_name" 列的值。...使用 setRelation 方法可以使得在表格中更容易地显示和编辑关联数据,而不是直接显示外键的值。...,并为表格设置了一个关系型代理(QSqlRelationalDelegate),以便在表格中显示关联表的数据而不是外键的值。
Filter属性指定了在文件对话框中显示的文件类型过滤器,如下所示:openFileDialog1.Filter = "文本文件|*.txt|所有文件|*....FilterIndex属性指定了在文件类型过滤器中默认选中的类型的索引,如下所示:openFileDialog1.FilterIndex = 1;上述代码指定了默认选中的文件类型过滤器为索引为1的“文本文件...当设置为true时,用户可以使用Ctrl键或Shift键选择多个文件,然后点击"打开"按钮,所有选中的文件路径都会存储在OpenFileDialog控件的FileNames属性中。...以下是一些Winform中OpenFileDialog控件常用的场景:打开文件:用户可以通过OpenFileDialog控件来选择一个或多个要打开的文件,从而可以在应用程序中读取文件内容进行操作。...3.具体案例要在WinForms应用程序中使用OpenFileDialog控件打开Excel文件并读取其内容,你需要使用适当的库来处理Excel文件。
一、环境介绍 操作系统: win10 64位 QT版本: QT5.12.6 编译器: MinGW 32 串口调试助手,在嵌入式开发中是很常用的。...->setValue(0); //设置进度条当前显示的值0 ui->spinBox_OnePackageSendByte->setMinimum(1); //每包发送的字节数最小值...文本文件里每一行的条目数据需要以\\n结束\n" "(也就是说,编辑一行数据就按回车,在第二行再继续编辑)\n"...,在继续操作!")..."注意: 每包的字节数量和间隔时间只有在开始发送文件之前设置有效!
1.加载文本文件中的纯文本: LoadData1.mxml 文本文件...--使用URLLoader类从文本文件加载文本数据到Flex中,无法通过MXML标签使用该类--> <mx:Application xmlns:mx="http://www.adobe.com/2006...4.加载url编码<em>值</em>对数据: <mx:Application xmlns:mx="http://www.adobe.com/2006/
同时,它支持鼠标、键盘操作,在元素控件树较复杂的界面,可以辅助我们完成自动化操作。...项目地址:Github地址支持的应用为下面 2 大类:Win32 API 包含 MFC、VB6、VCL、simple WinForms controls and most of the old legacy...appsMS UI Automation包含 WinForms、WPF、Store apps、Qt5, browsers其中win32 API 的 backend 为「 win32 」MS UI Automation...的 backend 为「 uia 」元素控件和 WinAppDriver 类似,在编写自动化脚本之前,我们需要先获取元素控件的各类属性值获取元素控件有 2 种方式:窗口内置方法检查工具窗口对象内置的...()常用的检查工具也包含 2 种,分别是:Inspect.exe、Spy++实战一下我们使用PC端微信来实现自动发消息功能,进行实际操作之前,先安装好环境pip3 install pywinauto打开微信客户端首先
项目地址:https://github.com/pywinauto/pywinauto 支持的应用为下面 2 大类: Win32 API 包含 MFC、VB6、VCL、simple WinForms...controls and most of the old legacy apps MS UI Automation 包含 WinForms、WPF、Store apps、Qt5, browsers...# 窗口对象中内置方法,打印窗体内所有元素控件 # 方式一: 窗体对象.print_control_identifiers() # 方式二 窗体对象.dump_tree() 常用的检查工具也包含...实战一下 在实战之前,我们先安装依赖包 pywinauto # 安装依赖 pip3 install pywinauto 接下来,我们还是以上篇文章中的例子来讲解完整的实现过程 4-1 打开微信客户端...首先,通过检查工具判断应用的 backend 属性值,PC 端微信的 backend 为「 uia 」 然后,实例化一个「 Application 」类 最后,使用该对象内置的函数创建一个应用对象
该数据是以键值对的形式组织的,其中键是字符串,值可以是字符串、数字、布尔值、数组、对象(即嵌套的键值对集合)或null,在Qt中默认提供了QJson系列类库,使用该类库可以很方便的解析和处理JSON文档...1.1 解析单一键值对实现解析根中的单一键值对,例如解析config.json配置文件中的blog,enable,status等这些独立的字段值,在解析之前需要先通过QJsonDocument::fromJson...bool contains(const QString &key) const 检查对象中是否包含指定的键。...,如配置文件中的ObjectInArrayJson则是一个字典中嵌套了另外两个字典而每个字典中的值又是一个Value数组,而与之相对应的ArrayJson则是在列表中嵌套了另外一个列表,这两中结构的使用读者可参照如下案例...1.4 解析多字典键值实现解析字典中嵌套多个参数或字典中嵌套参数中包含列表的数据集,如配置文件中的ObjectJson则是字典中存在多个键值对,而ObjectArrayJson则更进一步在多键值对中增加了列表的支持
在DataSet中可以包含任意数量的DataTable(数据表),且每个DataTable对应一个数据库的数据表(Table)或视图(View)。...等数据库组件,但.NET FrameWork SDK中提供了一种数据绑定技术,可以把打开的数据表中的某个或者某些字段绑定到在命名空间System.Window.Forms中定义的WinForm组件(如TextBox...这表示用户可以使用ADO.NET绑定到传统的数据存储区(如存储在Access或SQL Server表中的数据),也可以绑定到从文件读取的、包含在其他控件的或存储在阵列中的数据结果。...其中DataSource表示指定的数据集;DisplayMember表示ComboBox组件显示的字段值;ValueMember表示ComboBox组件选择后的值。...第6行代码我们建立一个SQL查询,用来查询数据表中StuID字段值等于TxtStuID.Text输入值的所有记录。
Control 类为在Form中显示的所有控件提供基本功能,Form类表示应用程序内的窗口。...案例学习:标签控件的隐藏,窗口打开与关闭 本次实验目标是建立两个窗体,当点击图1-11的登录系统时候,可以打开另一个窗体,在点击文字打开后显示学校名称,点击文字隐藏时候隐藏学校名称。...e) { linkLabel1.LinkVisited = true; //确认超文本文件链接是按照链接后的样式呈现。 ...ReadOnly 文本框中的文本为只读 Text 检索在控件中输入的文本 方法 说明 Clear 删除现有的所有文本 Show 相当于将控件的 Visible 属性设置为 True 并显示控件 事件...说明 KeyPress 用户按一个键结束时将发生该事件 表1-2 TextBox文本框控件属性及方法 Button按钮控件主要接收用户功能确认操作,以期执行具体的触发事件。
pycharm扩展工具中的配置也需要调整一下: ? 上一篇的配置写的是pyqt5的配置,这里主要采用PySide2进行学习。...修改为正确的配置后,鼠标选中ui文件,右键选择扩展工具中的pyside2-uic就可以转换为python脚本。 先看一下我画的一个简单的GUI页面: ?...保存页面文件后,后缀是.ui的格式,用文本文件打开的话,内容是xml格式的: ? postman.ui源码: <?xml version="1.0" encoding="UTF-8"?...= QComboBox(Dialog) self.comboBox.addItem("") self.comboBox.addItem("") self.comboBox.setObjectName...(u"comboBox") self.comboBox.setGeometry(QRect(70, 30, 81, 31)) self.lineEdit = QLineEdit
很多情况下,我们需要使用工作表中的数据来填充组合框,但往往这些数据中含有许多重复值。如何去除重复值并得到唯一值,这是一个永恒的话题,大家也会用到各式各样的方法得到结果。...本文讲解一种技巧,使用Recordset(记录集)来获取唯一值并将其填充到组合框中。 示例数据如下图1所示。在工作表中有一个组合框,需要包含列A中的省份列表,但是列A中有很多重复的省份数据。 ?...单击功能区“开发工具”选项卡中“插入”按钮下ActiveX控件中的“组合框”,在工作表中插入一个组合框,可以看到Excel将其自动命名为“ComboBox1”,如下图2所示。 ?...图2 按Alt+F11组合键,打开VBE,插入标准模块并输入代码如下: Sub FillCombox() Dim Myconnection AsConnection Dim Myrecordset...可以在任何事件或过程中调用它们,例如工作簿打开事件、查询刷新事件或者按下按钮后。 运行或调用过程后,在工作表中单击组合框右侧下拉按钮,结果如下图3所示。 ?
重绘可以在屏幕上直接进行,也可以在内存中进行,最后再将修改后的图形或图像显示在屏幕上。 在计算机图形学中,图形图像的重绘通常是使用图形库或绘图软件完成的。...一、图形图像的重绘 1.放大圆形半径案例 下面是一个简单的WinForms应用程序,用于在窗体中绘制和重绘一个圆形: using System; using System.Drawing; using...在OnPaint方法中,使用Graphics对象进行绘制,可以使用GDI+提供的各种绘图函数和属性来实现不同的效果。...注意,在窗体的构造函数中,需要将DoubleBuffered属性设置为true,以启用双缓冲技术,避免图形的闪烁现象。...2.缩放矩形长宽 在WindForm中,SetStyle、Invalidate、Update 和 Refresh 是用于处理界面控件的重要方法。
对于比较少的下拉项,可以通过在属性面板中Items属性中加入,比如停止位设置,如图,如果想要出现默认值,改变Text属性就可以,但要注意必须和下拉项一致: ? ...首先,我们先来控制打开/关闭串口,大致思路是:当按下打开串口按钮后,将设置值传送到串口控件的属性中,然后打开串口,按钮显示关闭串口,再次按下时,串口关闭,显示打开按钮; 在这个过程中,要注意一点,当我们点击打开按钮时...,会发生一些我们编程时无法处理的事件,比如硬件串口没有连接,串口打开的过程中硬件突然断开,这些被称之为异常,针对这些异常,C#也有try..catch处理机制,在try中放置可能产生异常的代码,比如打开串口...{ //将可能产生异常的代码放置在try块中 //根据当前串口属性来判断是否打开...} 接下来开始最后一个任务 —— 串口接收,在使用串口接收之前要先为串口注册一个Receive事件,相当于单片机中的串口接收中断,然后在中断内部对缓冲区的数据进行读取,如图,输入完成后回车,就会跳转到响应代码部分
本文以一个编写串口上位机控制Arduino板载LED的小任务,来完整的展示如何从下位机做到上位机,包含了Arduino、串口、C#编程程,麻雀虽小,可是五脏俱全哦~ 1.任务需求 编写一个电脑上位机控制....Items.AddRange(baud); //设置选项默认值 comboBox2.Text = "115200"; //获取电脑当前可用串口并添加到选项列表中...在这个函数中我们设置串口的一些属性,然后选择打开或者关闭串口: private void button1_Click(object sender, EventArgs e)...{ try { //将可能产生异常的代码放置在try块中 //根据当前串口属性来判断是否打开...最后我们来编写打开LED的程序: 同样,双击打开回调函数: ? ?
领取专属 10元无门槛券
手把手带您无忧上云