找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 1950|回复: 0

第45课 详解子程序 - 《按键精灵9 · 经典教程》

[复制链接]
  • 打卡等级:开宗立派

1087

主题

2141

回帖

4335

积分

院长

鲜花
9
猫粮
7413
QQ
发表于 2022-4-10 21:10:14 | 显示全部楼层 |阅读模式
按键电脑版
教程封面:
按键版本: 按键精灵9
教程难度: 高级教程
教程专辑: 《按键精灵9 · 经典教程》
教程简介: 这是我们早期按键精灵9的经典教程系列,当时讲完没多久就按键2014出来了,所以一直放在某个角落吃灰。现按键论坛重启,急需一套全面的零基础免费教程,故响应号召,将这部分视频重新整理并加上图文说明后发布。虽然教程年代久远,但按键精灵9的语法与按键精灵2014版完全一样,仅仅只是界面不同而已,所以可以放心学习,而一些改动的地方,我也将会在帖子中以图文形式告知大家。由于这个系列是我刚开始授课时讲解的,有点小紧张,语速比较慢,也有一些重复话语,推荐大家2倍速以上观看,捂脸,逃。。。
教程下载: -
网盘密码:
备注说明: -

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

×

教程内容介绍

当我们的代码量很多的时候,利用子程序复用代码可以大大降低我们的代码量,也可以让我们代码结构得到更好的优化。
下面是一些子程序例子
[按键精灵] 纯文本查看 复制代码
//高级例子
//介绍: 通过KeyPress方式按下每一个字符, 不支持中文字符, 常用于输入账号密码之类的地方
//需要注意的是: 当输入一个引号时(")必须输入一对("")
//模拟方式: 【0:普通模拟,1:硬件模拟,2:超级模拟】
//毫秒延时: 每个按键之间的等待延时时长
Sub zmKeyList(键码组, 模拟方式, 毫秒延时)
    Dim 键码(47)
    键码(0) ="a〓A〓65"
    键码(1) ="b〓B〓66"
    键码(2) ="c〓C〓67"
    键码(3) ="d〓D〓68"
    键码(4) ="e〓E〓69"
    键码(5) ="f〓F〓70"
    键码(6) ="g〓G〓71"
    键码(7) ="h〓H〓72"
    键码(8) ="i〓I〓73"
    键码(9) ="j〓J〓74"
    键码(10)="k〓K〓75"
    键码(11)="l〓L〓76"
    键码(12)="m〓M〓77"
    键码(13)="n〓N〓78"
    键码(14)="o〓O〓79"
    键码(15)="p〓P〓80"
    键码(16)="q〓Q〓81"
    键码(17)="r〓R〓82"
    键码(18)="s〓S〓83"
    键码(19)="t〓T〓84"
    键码(20)="u〓U〓85"
    键码(21)="v〓V〓86"
    键码(22)="w〓W〓87"
    键码(23)="x〓X〓88"
    键码(24)="y〓Y〓89"
    键码(25)="z〓Z〓90"
    键码(26)="`〓~〓192"
    键码(27)="1〓!〓49"
    键码(28)="2〓@〓50"
    键码(29)="3〓#〓51"
    键码(30)="4〓$〓52"
    键码(31)="5〓%〓53"
    键码(32)="6〓^〓54"
    键码(33)="7〓&〓55"
    键码(34)="8〓*〓56"
    键码(35)="9〓(〓57"
    键码(36)="0〓)〓48"
    键码(37)="-〓_〓189"
    键码(38)="=〓+〓187"
    键码(39)="[〓{〓219"
    键码(40)="]〓}〓221"
    键码(41)="\〓|〓220"
    键码(42)=";〓:〓186"
    键码(43)="'〓""〓222"
    键码(44)=",〓<〓188"
    键码(45)=".〓>〓190"
    键码(46)="/〓?〓191"
    键码(47)=" 〓 〓32"
    
    Dim Key, 数量, 判断, i, m, n
    数量 = Len(键码组)
    For i = 1 To 数量
        Key = Mid(键码组, i + 1, 1)
        判断 = False
        For n = 0 To 46
            MyKeyS = Split(键码(n), "〓")
            If Key = MyKeyS(0) Then 
                判断 = True
                If 模拟方式 = 0 Then
                    KeyPress Clng(MyKeyS(2)), 1
                ElseIf 模拟方式 = 1 Then
                    KeyPressH Clng(MyKeyS(2)), 1
                ElseIf 模拟方式 = 2 Then
                    KeyPressS Clng(MyKeyS(2)), 1
                End If
                Exit For
            ElseIf Key = MyKeyS(1) Then //需要按住Shift键来模拟
                判断 = True
                If 模拟方式 = 0 Then 
                    KeyDown 16, 1
                    KeyPress Clng(MyKeyS(2)), 1
                    KeyUp 16, 1
                ElseIf 模拟方式 = 1 Then
                    KeyDownH 16, 1
                    KeyPressH Clng(MyKeyS(2)), 1
                    KeyUpH 16, 1
                ElseIf 模拟方式 = 2 Then
                    KeyDownS 16, 1
                    KeyPressS Clng(MyKeyS(2)), 1
                    KeyUpS 16, 1
                End If
                Exit For
            End If
        Next
        Delay 毫秒延时
        If 判断=False Then Exit Sub
    Next
End Sub

//调用例子如下
Call zmKeyList("htttps://zimaoxy.com", 0, 50)
楼主热帖
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|紫猫编程学园

GMT+8, 2024-11-22 02:12

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表