找回密码
 加入
搜索
查看: 2395|回复: 6

[系统综合] 【已解决】发送指定按键后顺序读取ini文件内容

  [复制链接]
发表于 2012-7-13 20:58:02 | 显示全部楼层 |阅读模式
本帖最后由 killmus 于 2012-7-14 13:29 编辑
#include <Misc.au3>
Local $hDLL = DllOpen("user32.dll")
Local $list = IniReadSection("code.ini","list")
For $i=1 To $list[0][0]
While 1
        If _IsPressed("10", $hDLL) Then
                While _IsPressed("10", $hDLL)
                        Sleep(250)
                WEnd
                MsgBox(4096, "", "身份证:" & $list[$i][0],1)
                MsgBox(4096, "", "姓  名:" & $list[$i][1],1)
        ElseIf _IsPressed("1B", $hDLL) Then
                ExitLoop
        EndIf
WEnd
Next
以上代码只能读取ini文件的第一行内容,我想实现每当按shift键时,能显示下一行ini内容。比如:第一次按shift时,显示第一行,第二次按shift时,显示第二行........第N次按shift时,显示第N行。请帮我修改一下代码 ,谢谢!
发表于 2012-7-13 22:02:06 | 显示全部楼层
FileReadLine

帮助文档这个函数不是有例子吗
 楼主| 发表于 2012-7-13 22:09:01 | 显示全部楼层
回复 2# ooxxgod

我的是ini文件,要求读取关键字和值
发表于 2012-7-13 22:15:02 | 显示全部楼层
你的意思是不能读取INI?
发表于 2012-7-14 00:41:55 | 显示全部楼层
回复 1# killmus

楼主对基本的循环语句的应用不熟, 要多练练了. 按你的思路, 只要一个循环语句即可.
#include <Misc.au3>
Local $hDLL = DllOpen("user32.dll")
Local $list = IniReadSection("code.ini", "list")
If @error Then Exit
Local $count = 1
While 1
        If _IsPressed("10", $hDLL) Then
                MsgBox(4096, "", "身份证:" & $list[$count][0], 1)
                MsgBox(4096, "", "姓  名:" & $list[$count][1], 1)
                $count += 1
                If $count > $list[0][0] Then $count = 1 ; 保证下标不越界!
        ElseIf _IsPressed("1B", $hDLL) Then
                ExitLoop
        Else
                Sleep(50) ; 降低CPU占用率.
        EndIf
WEnd
发表于 2012-7-14 08:42:43 | 显示全部楼层
你一直在whil 1 里面循环,根本就没去for next 所以你的$i是不会变的
 楼主| 发表于 2012-7-14 13:28:21 | 显示全部楼层
回复 5# user3000


    谢谢~
您需要登录后才可以回帖 登录 | 加入

本版积分规则

QQ|手机版|小黑屋|AUTOIT CN ( 鲁ICP备19019924号-1 )谷歌 百度

GMT+8, 2024-9-30 05:27 , Processed in 0.084710 second(s), 24 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

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