IT天空

 找回密码
 加入我们

手机号码,快捷登录

搜索

[求助] 谁能简化 一下这个代码?

[复制链接]
www8899 发表于 2023-3-24 19:29:23 | 显示全部楼层 |阅读模式

Func key()
        FileOpen(@ScriptDir & "\vm\key.txt", 256)
        $AA1 = FileReadLine(@ScriptDir & "\vm\key.txt", 1)
        $AA2 = FileReadLine(@ScriptDir & "\vm\key.txt", 2)
        $AA3 = FileReadLine(@ScriptDir & "\vm\key.txt", 3)
        $AA4 = FileReadLine(@ScriptDir & "\vm\key.txt", 4)
        $AA5 = FileReadLine(@ScriptDir & "\vm\key.txt", 5)
        $AA6 = FileReadLine(@ScriptDir & "\vm\key.txt", 6)
        GUICtrlSetData($EDIT, $AA1 & @CRLF & $AA2 & @CRLF & $AA3 & @CRLF & $AA4 & @CRLF & $AA5 & @CRLF & $AA6)
EndFunc   ;==>key
这还是读取到6.要是到 100怎么简化一下?

最近访问 头像模式 列表模式
l3429900 发表于 2023-3-25 11:26:33 | 显示全部楼层

活跃 9050| 技术 0| 互助 4| 钻石 0

没有循环语句吗?比如 for  或 while 或 do case等
hashiqi 发表于 2023-3-25 16:32:53 | 显示全部楼层

活跃 7767| 技术 30| 互助 19| 钻石 0

for 循环就可以 for(int=1 ;int <=100; int++){
     $AA1 = FileReadLine(@ScriptDir & "\vm\key.txt", int)
}

点评

这个比较符合楼主  详情 回复 发表于 2023-3-25 18:49
 楼主| www8899 发表于 2023-3-25 16:34:08 | 显示全部楼层

活跃 1751| 技术 3| 互助 6| 钻石 0

能否具体一点
逆流天下 发表于 2023-3-25 18:49:28 | 显示全部楼层

活跃 9228| 技术 3| 互助 6| 钻石 100

hashiqi 发表于 2023-3-25 16:32
for 循环就可以 for(int=1 ;int

这个比较符合楼主
 楼主| www8899 发表于 2023-3-25 18:58:00 | 显示全部楼层

活跃 1751| 技术 3| 互助 6| 钻石 0

不太明白,不太明白,
Skyfree 发表于 2023-3-25 19:50:33 | 显示全部楼层

活跃 243736| 技术 1509| 互助 1931| 钻石 31334

直接 FileRead 就行
回答字数<=提问字数
 楼主| www8899 发表于 2023-3-25 19:56:21 | 显示全部楼层

活跃 1751| 技术 3| 互助 6| 钻石 0

本帖最后由 www8899 于 2023-3-25 20:00 编辑

#include <ComboConstants.au3>
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
$Form1 = GUICreate("Form1", 600, 440)
$EDIT = GUICtrlCreateCombo("", 10, 100, 580, 30)
GUISetState(@SW_SHOW)

key()

While 1
        $nMsg = GUIGetMsg()
        Switch $nMsg
                Case $GUI_EVENT_CLOSE
                        Exit

        EndSwitch
WEnd
Func key()
        FileOpen(@ScriptDir & "\vm\key.txt", 256)
        $AA1 = FileReadLine(@ScriptDir & "\vm\key.txt", 1)
        $AA2 = FileReadLine(@ScriptDir & "\vm\key.txt", 2)
        $AA3 = FileReadLine(@ScriptDir & "\vm\key.txt", 3)
        $AA4 = FileReadLine(@ScriptDir & "\vm\key.txt", 4)
        $AA5 = FileReadLine(@ScriptDir & "\vm\key.txt", 5)
        $AA6 = FileReadLine(@ScriptDir & "\vm\key.txt", 6)
        GUICtrlSetData($EDIT, $AA1 & @CRLF & $AA2 & @CRLF & $AA3 & @CRLF & $AA4 & @CRLF & $AA5 & @CRLF & $AA6)
EndFunc   ;==>key一行一行的读取

key.txt:
VMware 17:ZF71R-DMX85-08DQY-8YMNC-PPHV8
VMware 16:ZF3R0-FHED2-M80TY-8QYGC-NPKYF
VMware 15:FC7D0-D1YDL-M8DXZ-CYPZE-P2AY6
VMware 12:ZC3TK-63GE6-481JY-WWW5T-Z7ATA
VMware 10:1Z0G9-67285-FZG78-ZL3Q2-234JG
VMware 9:1Z0G9-67285-FZG78-ZL3Q2-234JG



静止0828 发表于 2023-3-27 11:24:03 | 显示全部楼层

活跃 107| 技术 5| 互助 0| 钻石 0

#include <ComboConstants.au3>
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
$Form1 = GUICreate("Form1", 600, 440)
$EDIT = GUICtrlCreateCombo("", 10, 100, 580, 30)
GUISetState(@SW_SHOW)

key()

While 1
        $nMsg = GUIGetMsg()
        Switch $nMsg
                Case $GUI_EVENT_CLOSE
                        Exit
        EndSwitch
WEnd
Func key()
        Local $i = 1
        Local $hFileOpen = FileOpen(@ScriptDir & "\vm\key.txt", 256)
       
        While 1
                $ReadText = FileReadLine($hFileOpen, $i)
                If $ReadText == "" And @error == -1 Then
                        MsgBox(48,"Key Read","Done",3)
                        ExitLoop
                Else
                        GUICtrlSetData($EDIT,$ReadText)
                EndIf
                $i += 1
        WEnd
        FileClose($hFileOpen)
EndFunc   ;==>key一行一行的读取
 楼主| www8899 发表于 2023-3-27 18:37:33 | 显示全部楼层

活跃 1751| 技术 3| 互助 6| 钻石 0

本帖最后由 www8899 于 2023-3-27 18:44 编辑

谢谢高手!谢谢高手!谢谢高手!谢谢高手!如果 把控件换成这个呢?
$EDIT = GUICtrlCreateEdit("", 10, 100, 580, 100)

点评

你的需求和之前提到的问题有冲突; Func key() Local $i = 1 Local $hFileOpen = FileOpen(@ScriptDir & "\vm\key.txt", 256) Local $ReadText = FileRead($hFileOpen) GUICtrlSetData($EDIT,$ReadText)  详情 回复 发表于 2023-3-27 19:42
静止0828 发表于 2023-3-27 19:42:54 | 显示全部楼层

活跃 107| 技术 5| 互助 0| 钻石 0

www8899 发表于 2023-3-27 18:37
谢谢高手!谢谢高手!谢谢高手!谢谢高手!如果 把控件换成这个呢?
$EDIT = GUICtrlCreateEdit("", 10, 1 ...

你的需求和之前提到的问题有冲突;
Func key()
        Local $i = 1
        Local $hFileOpen = FileOpen(@ScriptDir & "\vm\key.txt", 256)
        Local $ReadText = FileRead($hFileOpen)
       
        GUICtrlSetData($EDIT,$ReadText)
EndFunc   ;==>key一行一行的读取
 楼主| www8899 发表于 2023-3-27 19:47:11 | 显示全部楼层

活跃 1751| 技术 3| 互助 6| 钻石 0

#include <ComboConstants.au3>
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
$Form1 = GUICreate("Form1", 600, 440)
$EDIT = GUICtrlCreateEdit("", 10, 100, 580, 100)
GUISetState(@SW_SHOW)

key()

While 1
        $nMsg = GUIGetMsg()
        Switch $nMsg
                Case $GUI_EVENT_CLOSE
                        Exit
        EndSwitch
WEnd
Func key()
        Local $i = 1
        Local $hFileOpen = FileOpen(@ScriptDir & "\vm\key.txt", 256)
        While 1
                $ReadText = FileReadLine($hFileOpen, $i)
                If $ReadText == "" And @error == -1 Then
                        MsgBox(48,"Key Read","Done",3)
                        ExitLoop
                Else
                        GUICtrlSetData($EDIT,$ReadText)
                EndIf
                $i += 1
        WEnd
        FileClose($hFileOpen)
EndFunc   ;==>key

点评

你可以使用这段代码: Func key() Local $i = 1 Local $hFileOpen = FileOpen(@ScriptDir & "\vm\key.txt", 256) Local $ReadText = FileRead($hFileOpen) GUICtrl  详情 回复 发表于 2023-3-27 19:48
静止0828 发表于 2023-3-27 19:48:20 | 显示全部楼层

活跃 107| 技术 5| 互助 0| 钻石 0

www8899 发表于 2023-3-27 19:47
#include
#include
#include

你可以使用这段代码:

Func key()
        Local $i = 1
        Local $hFileOpen = FileOpen(@ScriptDir & "\vm\key.txt", 256)
        Local $ReadText = FileRead($hFileOpen)
      
        GUICtrlSetData($EDIT,$ReadText)
EndFunc   ;==>key一行一行的读取
 楼主| www8899 发表于 2023-3-27 19:57:06 | 显示全部楼层

活跃 1751| 技术 3| 互助 6| 钻石 0

只能显示一行 QQ截图20230327195638.png


点评

应该不会出现这个问题,你可以替换全部代码试一下。 #include #include #include $Form1 = GUICreate("Form1", 600, 440) $EDIT = GUICtrlCreateEdit("", 10, 100, 580, 100) GUISetState(@SW_SHOW) k  详情 回复 发表于 2023-3-27 19:59
静止0828 发表于 2023-3-27 19:59:05 | 显示全部楼层

活跃 107| 技术 5| 互助 0| 钻石 0


应该不会出现这个问题,你可以替换全部代码试一下。

#include <ComboConstants.au3>
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
$Form1 = GUICreate("Form1", 600, 440)
$EDIT = GUICtrlCreateEdit("", 10, 100, 580, 100)
GUISetState(@SW_SHOW)

key()

While 1
        $nMsg = GUIGetMsg()
        Switch $nMsg
                Case $GUI_EVENT_CLOSE
                        Exit
        EndSwitch
WEnd
Func key()
        Local $i = 1
        Local $hFileOpen = FileOpen(@ScriptDir & "\vm\key.txt", 256)
        Local $ReadText = FileRead($hFileOpen)
       
        GUICtrlSetData($EDIT,$ReadText)
EndFunc   ;==>key一行一行的读取
 楼主| www8899 发表于 2023-3-27 20:05:42 | 显示全部楼层

活跃 1751| 技术 3| 互助 6| 钻石 0

OK,谢谢!
您需要登录后才可以回帖 登录 | 加入我们

本版积分规则

www8899

1751

活跃

3

技术

6

互助
签到任务
最火的业界新闻
  • 联发科天玑9300 GPU性能惊喜:实测完胜苹果
  • Intel 14代酷睿暗藏2个超小核心:有妙用!
  • Intel 15代酷睿上台积电3nm 性能或暴涨75%
  • CPU、GPU首次合体 AMD年底拿出大杀器MI300
  • i5/i7/i9再见!Intel年度新品发布会定档:1
  • Arm发布Corte-X4/A720/520 CPU架构:淘汰32
  • 游戏不再挤牙膏 Arm发布G720 GPU:节省40%
  • Intel公布全新架构x86S!纯64位模式运行:
  • 骁龙8G5要上1.8nm工艺?高通表态愿意使用In
  • 全球第一款192核心CPU诞生!如此对比AMD/In
炫酷的硬件Show
  • MARK 1 - 设计型 PC 与垂直风道
  • 好的大王,没问题大王
  • 振华SUPER FLOWER 铜皇450W 铜牌电源
  • 比小更小,Mini-STX装机
  • 华擎X99E-ITX + 银欣ML06 装机记
  • 最强双路泰坦硬管水冷 制作流程
  • 银欣FT02,双路E5工作站
  • 迟到的定制机箱小钢炮清理灰尘
  • 乔思伯UMX1 Plus,小巧的家用综合主机
  • 分体水冷第二弹-Inwin 805 infinity
有趣的美图分享
  • 这谁受得了?
  • 完全体
  • 佛祖排名999+
  • 本人be like
  • 大夫,我啥时候能变回人形啊
  • Stable Diffusion
  • 绝杀
  • 上教科书!
  • 不如板凳
  • 对机器人有攻击加成吗
关注官方微信
快速回复 返回顶部 返回列表