按键精灵中的UI界面操作
1. 按键精灵中UI界面常用的控件
1. 文字框
界面1:
{标签页1:{文字框:{名称:"文字框1",显示内容:"显示内容",文字大小:0,高度:0,宽度:0,注释:"文字大小、高度、宽度是可选属性,如需使用默认值,可保持值为0或直接删除此属性"}, }, }
2. 输入框
界面1:
{标签页1:{输入框:{名称:"输入框1",提示内容:"提示用户应该输入什么内容",初始文本:"用户首次输入之前,输入框中的文本",仅输入数字:false,密码:false,文字大小:0,最大输入长度:0,高度:0,宽度:0,注释:"初始文本、文字大小、最大输入长度、高度、宽度是可选属性,如需使用默认值,可保持值为0或直接删除此属性"}, }, }
3. 按钮
界面1:
{标签页1:{按钮:{名称:"按钮1",显示内容:"显示内容",点击响应:"函数名1",文字大小:0,高度:0,宽度:0,注释:"文字大小、高度、宽度是可选属性,如需使用默认值,可保持值为0或直接删除此属性"}, }, }
4. 多选框
界面1:
{标签页1:{多选框:{名称:"多选框1",提示内容:"提示用户的文字内容",点击响应:"函数名1",选中:false,文字大小:0,高度:0,宽度:0,注释:"文字大小、高度、宽度是可选属性,如需使用默认值,可保持值为0或直接删除此属性"},多选框:{名称:"多选框1",提示内容:"提示用户的文字内容",点击响应:"函数名1",选中:false,文字大小:0,高度:0,宽度:0,注释:"文字大小、高度、宽度是可选属性,如需使用默认值,可保持值为0或直接删除此属性"} }, }
5. 下拉选项
界面1:
{标签页1:{下拉框:{名称:"下拉框1",选择响应:"函数名1",选项:["选项1","选项2","选项3"],初始选项:0,注释:"初始选项是可选属性,默认值为0。模版中设置了三个选项,您可以根据需要增加或减少,注意各选项之间用逗号分隔。"}, }, }
6. 标签页
界面1:
{标签页1:{}, 标签页2:{}}
7. 水平布局
界面1:
{标签页1:{水平布局:{注释:"用于将多个控件放在同一行",}, }, }
按键精灵的UI控件代码全是中文的,而且只能设置一些简单的样式,这一点比Auto.js差很多。
2. 如何获取控件中的值
Dim result = ReadUIConfig("控件名称")TracePrint(result)
3. 脚本界面示例
以下是官方UI界面示例:

UI界面的代码如下:
界面: {界面1: {文字框: {注释: "文字大小、高度、宽度是可选属性,如需使用默认值,可保持值为0或直接删除此属性",名称: "文字框1",显示内容: "请填写登陆账号信息",文字大小: 25,高度: 0,宽度: 0}, 水平布局: {注释: "用于将多个控件放在同一行",文字框: {注释: "文字大小、高度、宽度是可选属性,如需使用默认值,可保持值为0或直接删除此属性",名称: "zh",显示内容: "账号:",文字大小: 0,高度: 0,宽度: 0}, 输入框: {注释: "文字大小、最大输入长度、高度、宽度是可选属性,如需使用默认值,可保持值为0或直接删除此属性",名称: "账号",提示内容: "请输入账号,多个用\".\"号分隔",仅输入数字: false,文字大小: 0,最大输入长度: 0,高度: 0,宽度: 0},}, 水平布局: {注释: "用于将多个控件放在同一行",文字框: {注释: "文字大小、高度、宽度是可选属性,如需使用默认值,可保持值为0或直接删除此属性",名称: "mm",显示内容: "密码:",文字大小: 0,高度: 0,宽度: 0},输入框: {注释: "文字大小、最大输入长度、高度、宽度是可选属性,如需使用默认值,可保持值为0或直接删除此属性",名称: "密码",提示内容: "请输入密码",仅输入数字: false,文字大小: 0,最大输入长度: 0,高度: 0,宽度: 200},}, 水平布局: {注释: "用于将多个控件放在同一行",文字框: {注释: "文字大小、高度、宽度是可选属性,如需使用默认值,可保持值为0或直接删除此属性",名称: "qf",显示内容: "区服:",文字大小: 0,高度: 0,宽度: 0},下拉框: {注释: "模版中设置了三个选项,您可以根据需要增加或减少,注意各选项之间用逗号分隔。",名称: "区服",选项: ["1区","2区","3区"]},},文字框: {注释: "文字大小、高度、宽度是可选属性,如需使用默认值,可保持值为0或直接删除此属性",名称: "文字框2",显示内容: "=================",文字大小: 25,高度: 0,宽度: 0}, 多选框: {注释: "文字大小、高度、宽度是可选属性,如需使用默认值,可保持值为0或直接删除此属性",名称: "多选框1",提示内容: "我爱按键精灵╭(╯3╰)╮",选中: true,文字大小: 30,高度: 0,宽度: 0}, 文字框: {注释: "文字大小、高度、宽度是可选属性,如需使用默认值,可保持值为0或直接删除此属性",名称: "文字框3",显示内容: " ",文字大小: 60,高度: 0,宽度: 0},文字框: {注释: "文字大小、高度、宽度是可选属性,如需使用默认值,可保持值为0或直接删除此属性",名称: "gn",显示内容: "脚本功能选择:",文字大小: 25,高度: 0,宽度: 0},下拉框: {注释: "模版中设置了三个选项,您可以根据需要增加或减少,注意各选项之间用逗号分隔。",名称: "功能",选项: ["依次展示所填账号","展示所选的区服","看看你爱不爱按键精灵?"]},}
}
以下是主功能代码:
// PC端运行脚本前必须先点击【界面设计】上方的【预览】按钮,在手机屏幕显示的界面中修改控件值并保存,再点运行按钮即可读取界面控件值
Delay 3000
Dim 账号输入框,账号数组,账号数量
TracePrint ReadUIConfig("功能")
If ReadUIConfig("功能")=0 thenCall 文本框读取()
ElseIf ReadUIConfig("功能")=1 thenCall 下拉框读取()
ElseIf ReadUIConfig("功能")=2 thenCall 多选框读取()
End if
Delay 2000Sub 文本框读取()// 获取账号输入框内容,如果为空则默认为text1.text2.text3账号输入框 = ReadUIConfig("账号","text1.text2.text3")账号数组 = Split(账号输入框,".")账号数量=0For Each 每个账号 in 账号数组账号数量=账号数量+1ShowMessage "第"&账号数量&"个账号是:"&每个账号Delay 2000nextShowMessage "一共填了"&账号数量&"个账号,展示完毕"
End sub
Sub 下拉框读取()If ReadUIConfig("区服")=0 thenShowMessage "当前选的区服是1区"ElseIf ReadUIConfig("区服")=1 thenShowMessage "当前选的区服是2区"ElseIf ReadUIConfig("区服")=2 thenShowMessage "当前选的区服是3区"End if
End sub
Sub 多选框读取()If ReadUIConfig("多选框1")=true thenShowMessage "么么哒~~~"ElseShowMessage "还能愉快的做朋友吗?"End if
End sub相关文章:
按键精灵中的UI界面操作
1. 按键精灵中UI界面常用的控件 1. 文字框 界面1: {标签页1:{文字框:{名称:"文字框1",显示内容:"显示内容",文字大小:0,高度:0,宽度:0,注释:"文字大小、高度、宽度是可选属性,如需使用默认值,可保持值为0或直接删除此属性&qu…...
dpdk 程序如何配置网卡收发包队列描述符配置?
问题描述 dpdk 程序在配置网卡队列时会涉及收发包队列描述符数量配置问题,收发包描述符的数量看似是一个简单的配置,却对转发性能有着一定的影响。实际业务程序中,收发包描述符大小配置一般参考 dpdk 内部示例程序配置进行,经验之…...
二蛋赠书七期:《云原生数据中台:架构、方法论与实践》
前言 大家好!我是二蛋,一个热爱技术、乐于分享的工程师。在过去的几年里,我一直通过各种渠道与大家分享技术知识和经验。我深知,每一位技术人员都对自己的技能提升和职业发展有着热切的期待。因此,我非常感激大家一直…...
计算机毕设 基于大数据的服务器数据分析与可视化系统 -python 可视化 大数据
文章目录 0 前言1 课题背景2 实现效果3 数据收集分析过程**总体框架图****kafka 创建日志主题****flume 收集日志写到 kafka****python 读取 kafka 实时处理****数据分析可视化** 4 Flask框架5 最后 0 前言 🔥 这两年开始毕业设计和毕业答辩的要求和难度不断提升&a…...
初识rust
调试下rust 的执行流程 参考: 认识 Cargo - Rust语言圣经(Rust Course) 新建一个hello world 程序: fn main() {println!("Hello, world!"); }用IDA 打开exe,并加载符号: 根据字符串找到主程序入口: 双击…...
shiro-cve2016-4437漏洞复现
一、漏洞特征 Apache Shiro是一款开源强大且易用的Java安全框架,提供身份验证、授权、密码学和会话管理。Shiro框架直观、易用,同时也能提供健壮的安全性。 因为在反序列化时,不会对其进行过滤,所以如果传入恶意代码将会造成安全问题 在 1.2.4 版本前, 加…...
【MongoDB-Redis-MySQL-Elasticsearch-Kibana-RabbitMQ-MinIO】Java全栈开发软件一网打尽
“Java全栈开发一网打尽:在Windows环境下探索技术世界的奇妙之旅” 前言 全栈开发是一项复杂而令人兴奋的任务,涵盖了从前端到后端、数据库到可视化层、消息队列到文件存储的广泛领域。本文将带您深入探讨在Windows环境下进行全栈开发的过程࿰…...
Implementing class错误解决
最近在使用IDEASmart Tomcat启动项目时,报以下错误: Injection of resource dependencies failed; nested exception is java.lang.IncompatibleClassChangeError: Implementing class根据网上结论加上我这里的原因,总共以下几个方面&#x…...
关于 国产系统UOS系统Qt开发Tcp服务器外部连接无法连接上USO系统 的解决方法
若该文为原创文章,转载请注明原文出处 本文章博客地址:https://hpzwl.blog.csdn.net/article/details/134254817 红胖子(红模仿)的博文大全:开发技术集合(包含Qt实用技术、树莓派、三维、OpenCV、OpenGL、ffmpeg、OSG、单片机、软…...
初阶JavaEE(15)(Cookie 和 Session、理解会话机制 (Session)、实现用户登录网页、上传文件网页、常用的代码片段)
接上次博客:初阶JavaEE(14)表白墙程序-CSDN博客 Cookie 和 Session 你还记得我们之前提到的Cookie吗? Cookie是HTTP请求header中的一个属性,是一种用于在浏览器和服务器之间持久存储数据的机制,允许网站…...
C++入门学习(1)命名空间和输入输出
前言 在C语言和基本的数据结构学习之后,我们终于迎来了期待已久的C啦!C发明出来的意义就是填补一些C语言的不足,让我们更加方便的写代码,所以今天我们就来讲一下C语言不足的地方和在C中的解决办法! 一、命名空间 在学习…...
AI:58-基于深度学习的猫狗图像识别
🚀 本文选自专栏:AI领域专栏 从基础到实践,深入了解算法、案例和最新趋势。无论你是初学者还是经验丰富的数据科学家,通过案例和项目实践,掌握核心概念和实用技能。每篇案例都包含代码实例,详细讲解供大家学习。 📌📌📌在这个漫长的过程,中途遇到了不少问题,但是…...
【原创】java+swing+mysql宠物领养管理系统设计与实现
摘要: 生活中,有很多被人遗弃的宠物,这些宠物的处理成为了一个新的难题。生活中也有许多人喜欢养宠物,为了方便大家进行宠物领养,提高宠物领养管理的效率和便利性。本文针对这一问题,提出设计和实现一个基…...
虚拟机Linux-Centos系统网络配置常用命令+Docker 的常用命令
目录 1、虚拟机Linux-Centos系统网络配置常用命令2、Docker 的常用命令2.1 安装docker步骤命令2.2 在docker容器中安装和运行mysql 2、dockerfile关键字区别(ADD/COPY,CMD/ENTRYPOINT) 1、虚拟机Linux-Centos系统网络配置常用命令 进入网络配置文件目录 cd /etc/sysconfig/ne…...
数据分析相关知识整理_--秋招面试版
一、关于sql语句(常问) 1)sql写过的复杂的运算 聚合函数,case when then end语句进行条件运算,字符串的截取、替换,日期的运算,排名等等;行列转换; eg:行列转换 SELE…...
HMM与LTP词性标注之命名实体识别与HMM
文章目录 知识图谱介绍NLP应用场景知识图谱(Neo4j演示)命名实体识别模型架构讲解HMM与CRFHMM五大要素(两大状态与三大概率)HMM案例分享HMM实体识别应用场景代码实现 知识图谱介绍 NLP应用场景 图谱的本质,就是把自然…...
Sui发布RPC2.0 Beta,拥抱GraphQL并计划弃用JSON-RPC
为了解决现有RPC存在的许多已知问题,Sui正在准备推出一个基于GraphQL的新RPC服务,名为Sui RPC 2.0。GraphQL是一种开源数据查询和操作语言,旨在简化需要复杂数据查询的API和服务。 用户目前可以访问Sui主网和测试网网络的Beta版本的只读快照…...
设计模式—结构型模式之桥接模式
设计模式—结构型模式之桥接模式 将抽象与实现解耦,使两者都可以独立变化。 在现实生活中,某些类具有两个或多个维度的变化,如图形既可按形状分,又可按颜色分。如何设计类似于 Photoshop 这样的软件,能画不同形状和不…...
【RabbitMQ】RabbitMQ 消息的堆积问题 —— 使用惰性队列解决消息的堆积问题
文章目录 一、消息的堆积问题1.1 什么是消息的堆积问题1.2 消息堆积的解决思路 二、惰性队列解决消息堆积问题2.1 惰性队列和普通队列的区别2.2 惰性队列的声明方式2.3 演示惰性队列接收大量消息2.4 惰性队列的优缺点 一、消息的堆积问题 1.1 什么是消息的堆积问题 消息的堆积…...
深度优先遍历与连通分量
深度优先遍历(Depth First Search)的主要思想是首先以一个未被访问过的顶点作为起始顶点,沿当前顶点的边走到未访问过的顶点。当没有未访问过的顶点时,则回到上一个顶点,继续试探别的顶点,直至所有的顶点都被访问过。 下图示例的…...
React Native 开发环境搭建(全平台详解)
React Native 开发环境搭建(全平台详解) 在开始使用 React Native 开发移动应用之前,正确设置开发环境是至关重要的一步。本文将为你提供一份全面的指南,涵盖 macOS 和 Windows 平台的配置步骤,如何在 Android 和 iOS…...
基于Flask实现的医疗保险欺诈识别监测模型
基于Flask实现的医疗保险欺诈识别监测模型 项目截图 项目简介 社会医疗保险是国家通过立法形式强制实施,由雇主和个人按一定比例缴纳保险费,建立社会医疗保险基金,支付雇员医疗费用的一种医疗保险制度, 它是促进社会文明和进步的…...
从零开始打造 OpenSTLinux 6.6 Yocto 系统(基于STM32CubeMX)(九)
设备树移植 和uboot设备树修改的内容同步到kernel将设备树stm32mp157d-stm32mp157daa1-mx.dts复制到内核源码目录下 源码修改及编译 修改arch/arm/boot/dts/st/Makefile,新增设备树编译 stm32mp157f-ev1-m4-examples.dtb \stm32mp157d-stm32mp157daa1-mx.dtb修改…...
新能源汽车智慧充电桩管理方案:新能源充电桩散热问题及消防安全监管方案
随着新能源汽车的快速普及,充电桩作为核心配套设施,其安全性与可靠性备受关注。然而,在高温、高负荷运行环境下,充电桩的散热问题与消防安全隐患日益凸显,成为制约行业发展的关键瓶颈。 如何通过智慧化管理手段优化散…...
均衡后的SNRSINR
本文主要摘自参考文献中的前两篇,相关文献中经常会出现MIMO检测后的SINR不过一直没有找到相关数学推到过程,其中文献[1]中给出了相关原理在此仅做记录。 1. 系统模型 复信道模型 n t n_t nt 根发送天线, n r n_r nr 根接收天线的 MIMO 系…...
深度学习习题2
1.如果增加神经网络的宽度,精确度会增加到一个特定阈值后,便开始降低。造成这一现象的可能原因是什么? A、即使增加卷积核的数量,只有少部分的核会被用作预测 B、当卷积核数量增加时,神经网络的预测能力会降低 C、当卷…...
VM虚拟机网络配置(ubuntu24桥接模式):配置静态IP
编辑-虚拟网络编辑器-更改设置 选择桥接模式,然后找到相应的网卡(可以查看自己本机的网络连接) windows连接的网络点击查看属性 编辑虚拟机设置更改网络配置,选择刚才配置的桥接模式 静态ip设置: 我用的ubuntu24桌…...
Go 语言并发编程基础:无缓冲与有缓冲通道
在上一章节中,我们了解了 Channel 的基本用法。本章将重点分析 Go 中通道的两种类型 —— 无缓冲通道与有缓冲通道,它们在并发编程中各具特点和应用场景。 一、通道的基本分类 类型定义形式特点无缓冲通道make(chan T)发送和接收都必须准备好࿰…...
Netty从入门到进阶(二)
二、Netty入门 1. 概述 1.1 Netty是什么 Netty is an asynchronous event-driven network application framework for rapid development of maintainable high performance protocol servers & clients. Netty是一个异步的、基于事件驱动的网络应用框架,用于…...
AI+无人机如何守护濒危物种?YOLOv8实现95%精准识别
【导读】 野生动物监测在理解和保护生态系统中发挥着至关重要的作用。然而,传统的野生动物观察方法往往耗时耗力、成本高昂且范围有限。无人机的出现为野生动物监测提供了有前景的替代方案,能够实现大范围覆盖并远程采集数据。尽管具备这些优势…...
