好友
阅读权限40
听众
最后登录1970-1-1
|
本帖最后由 cmc5410 于 2012-8-13 10:49 编辑
第2章
介绍
我们增加了图形用户界面,让我们开始添加实际的编码。
第1节
添加一个while循环
一个while循环,使代码可以重复执行一个固定的条件。#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
GUICreate("DNF自动刷材料脚本", 302, 143, 192, 124)
GUICtrlCreateLabel("Key", 8, 10)
$key1 = GUICtrlCreateInput("", 35, 8, 120)
GUICtrlCreateLabel("Time", 8, 44)
$time1 = GUICtrlCreateInput("", 35, 40, 120)
$startbutton = GUICtrlCreateButton("开始", 190, 8, 60)
GUISetState(@SW_SHOW)
While 1
$msg = GUIGetMsg()
WEnd
While 1表示一个while循环
WEND表示while循环语句的结束。
如果你现在运行你的代码
GUI界面不会关闭,可以用托盘的退出按钮关闭。
这个GUIGetMsg用到$msg = GUIGetMsg()
添加一个Case语句#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
GUICreate("DNF自动刷材料脚本", 302, 143, 192, 124)
GUICtrlCreateLabel("Key", 8, 10)
$key1 = GUICtrlCreateInput("", 35, 8, 120)
GUICtrlCreateLabel("Time", 8, 44)
$time1 = GUICtrlCreateInput("", 35, 40, 120)
$startbutton = GUICtrlCreateButton("开始", 190, 8, 60)
GUISetState(@SW_SHOW)
While 1
$msg = GUIGetMsg()
Case $msg = $startbutton
Case $msg = $GUI_EVENT_CLOSE
EndSelect
WEnd
我们增加了两个选项Select语句 选项 1:$ MSG = $ startbutton,这意味着如果开始按钮按下它会引发什么样的事件 (现在还没有添加代码)
选项 2:$ MSG =的$ GUI_EVENT_CLOSE,这意味着,如果退出按钮(X按钮)按下它会引发什么样的事件(现在还没有添加代码)
startbutton事件
现在让我们来告诉程序一旦按下开始按钮做什么。#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
GUICreate("DNF自动刷材料脚本", 302, 143, 192, 124)
GUICtrlCreateLabel("Key", 8, 10)
$key1 = GUICtrlCreateInput("", 35, 8, 120)
GUICtrlCreateLabel("Time", 8, 44)
$time1 = GUICtrlCreateInput("", 35, 40, 120)
$startbutton = GUICtrlCreateButton("开始", 190, 8, 60)
GUISetState(@SW_SHOW)
While 1
$msg = GUIGetMsg()
Select
Case $msg = $startbutton
$send1 = GUICtrlRead($key1)
$sleep1 = GUICtrlRead($time1)
Case $msg = $GUI_EVENT_CLOSE
EndSelect
WEnd
首先,它将声明所有的变量。 这意味着它会读取用户输入到我们的两个输入字段$ time1和$KEY1 ,并使其在以下代码可用。
$KEY1 被赋予新的变量$ send1。
$ time1被分配了新的变量$ sleep1。
下一步我们将添加另一个while循环#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
GUICreate("DNF自动刷材料脚本", 302, 143, 192, 124)
GUICtrlCreateLabel("Key", 8, 10)
$key1 = GUICtrlCreateInput("", 35, 8, 120)
GUICtrlCreateLabel("Time", 8, 44)
$time1 = GUICtrlCreateInput("", 35, 40, 120)
$startbutton = GUICtrlCreateButton("开始", 190, 8, 60)
GUISetState(@SW_SHOW)
While 1
$msg = GUIGetMsg()
Select
Case $msg = $startbutton
$send1 = GUICtrlRead($key1)
$sleep1 = GUICtrlRead($time1)
While 1
Send($send1)
Sleep($sleep1)
WEnd
Case $msg = $GUI_EVENT_CLOSE
EndSelect
WEnd
退出按钮事件
$GUI_EVENT_CLOSE功能将退出循环,退出/关闭程序#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
GUICreate("DNF自动刷材料脚本", 302, 143, 192, 124)
GUICtrlCreateLabel("Key", 8, 10)
$key1 = GUICtrlCreateInput("", 35, 8, 120)
GUICtrlCreateLabel("Time", 8, 44)
$time1 = GUICtrlCreateInput("", 35, 40, 120)
$startbutton = GUICtrlCreateButton("开始", 190, 8, 60)
GUISetState(@SW_SHOW)
While 1
$msg = GUIGetMsg()
Select
Case $msg = $startbutton
$send1 = GUICtrlRead($key1)
$sleep1 = GUICtrlRead($time1)
While 1
Send($send1)
Sleep($sleep1)
WEnd
Case $msg = $GUI_EVENT_CLOSE
GUIDelete()
ExitLoop
EndSelect
WEnd
GUIDelete()就是关闭界面 反之就必须用托盘的退出了
|
|