找回密码
 加入
搜索
查看: 6128|回复: 15

[AU3基础] [已解决]求助按钮问题

  [复制链接]
发表于 2012-9-15 13:25:14 | 显示全部楼层 |阅读模式
本帖最后由 lnlyf 于 2012-9-15 14:18 编辑

在理想股票论坛看到一个小外挂,想加一个功能
这是源码:
#Region ;**** 参数创建于 ACNWrapper_GUI ****
#EndRegion ;**** 参数创建于 ACNWrapper_GUI ****
#include <ButtonConstants.au3>
#include <EditConstants.au3>
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
Opt("GUIOnEventMode", 1)
#Region ### START Koda GUI section ### Form=
$Form1 = GUICreate("股票代码获取器", 210, 22, 592, 524, -1, BitOR($WS_EX_TOOLWINDOW, $WS_EX_TOPMOST, $WS_EX_WINDOWEDGE))
GUISetOnEvent($GUI_EVENT_CLOSE, "Form1Close")
$Input1 = GUICtrlCreateInput("", 8, 2, 150, 17)
GUICtrlSetColor(-1, 0xFFFFF)
GUICtrlSetBkColor(-1, 0x000000)

$Button1 = GUICtrlCreateButton("同步", 165, 2, 41, 17, $WS_GROUP)
GUICtrlSetOnEvent(-1, "Button1Click")
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ##
Global $sss
While 1
         $BT=ControlGetText ("飞狐交易师 - ", "", 65281 )        ;取窗口全标题飞狐交易师 - 专业版 - [东方电子 SZ000682]
         ;$BT="飞狐交易师 - 专业版 - [东方电子 SZ000682] "
         $sss=StringRegExp($BT,'\d{6}',1)        
   ; If StringLen($sss[1]        
         ControlSetText ( "股票代码获取器", "","Edit1", "当前代码:" & $sss[0])
         Sleep(500)
         
WEnd

Func Button1Click()
If WinExists("[CLASS:TdxW_MainFrame_Class]") Then
    ; MsgBox(0, "", "财富通打开")
         WinActivate("[CLASS:TdxW_MainFrame_Class]")
    ;  Send("600500")
         Send($sss[0])
         Sleep(1000)
         Send("{ENTER}")        
         MsgBox(0, "", "发送结束")
Else        
          MsgBox(0, "", "财富通没有打开")
EndIf

EndFunc
Func Form1Close()
         exit
EndFunc
 楼主| 发表于 2012-9-15 13:30:03 | 显示全部楼层
本帖最后由 lnlyf 于 2012-9-15 13:39 编辑

想加一个按钮成这样:
#Region ;**** 参数创建于 ACNWrapper_GUI ****
#EndRegion ;**** 参数创建于 ACNWrapper_GUI ****
#include <ButtonConstants.au3>
#include <EditConstants.au3>
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
Opt("GUIOnEventMode", 1)

#Region ### START Koda GUI section ### Form=
$Form1 = GUICreate("股票代码获取器", 260, 22, 592, 524, -1, BitOR($WS_EX_TOOLWINDOW, $WS_EX_TOPMOST, $WS_EX_WINDOWEDGE))
GUISetOnEvent($GUI_EVENT_CLOSE, "Form1Close")
$Input1 = GUICtrlCreateInput("", 8, 2, 150, 17)
GUICtrlSetColor(-1, 0xFFFFF)
GUICtrlSetBkColor(-1, 0x000000)

$Button1 = GUICtrlCreateButton("同步", 165, 2, 41, 17, $WS_GROUP)
$Button2 = GUICtrlCreateButton("买入", 215, 2, 41, 17, $WS_GROUP)
GUICtrlSetOnEvent(-1, "Button1Click")
GUICtrlSetOnEvent(-1, "Button2Click")

GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ##
Global $sss
While 1
         $BT=ControlGetText ("飞狐交易师 - ", "", 65281 )        ;取窗口全标题飞狐交易师 - 专业版 - [东方电子 SZ000682]
         ;$BT="飞狐交易师 - 专业版 - [东方电子 SZ000682] "
         $sss=StringRegExp($BT,'\d{6}',1)        
   ; If StringLen($sss[1]        
         ControlSetText ( "股票代码获取器", "","Edit1", "当前代码:" & $sss)
         Sleep(500)
         
WEnd

Func Button1Click()
If WinExists("[CLASS:TdxW_MainFrame_Class]") Then
    ; MsgBox(0, "", "财富通打开")
         WinActivate("[CLASS:TdxW_MainFrame_Class]")
    ;  Send("600500")
         Send($sss[0])
         Sleep(1000)
         Send("{ENTER}")        
         MsgBox(0, "", "发送结束")
Else        
          MsgBox(0, "", "财富通没有打开")
EndIf

EndFunc

Func Button2Click()
If WinExists("[CLASS:TdxW_MainFrame_Class]") Then
    ; MsgBox(0, "", "财富通打开")
         WinActivate("[CLASS:TdxW_MainFrame_Class]")
        ;          Sleep(100)
    ;  Send("600500")
         Send($sss[0])
         Sleep(300)
         Send("{ENTER}")        
        ; MsgBox(0, "", $sss[0])
Else        
          MsgBox(0, "", "买入")
EndIf

EndFunc

Func Form1Close()
         exit
EndFunc
 楼主| 发表于 2012-9-15 13:31:21 | 显示全部楼层
加了按钮后,只有一个按钮起作用,请教高手问题出在哪里?谢谢!
发表于 2012-9-15 13:37:16 | 显示全部楼层
回复 3# lnlyf

$Button1 = GUICtrlCreateButton("同步", 165, 2, 41, 17, $WS_GROUP)
$Button1 = GUICtrlCreateButton("买入", 215, 2, 41, 17, $WS_GROUP)

買入 跟 同步  的按鈕名稱 都叫做 $Button1

那請問  我按 同步  跟 按 買入  會有差別嗎??

评分

参与人数 1金钱 +10 收起 理由
lnlyf + 10

查看全部评分

 楼主| 发表于 2012-9-15 13:40:27 | 显示全部楼层
回复  lnlyf

$Button1 = GUICtrlCreateButton("同步", 165, 2, 41, 17, $WS_GROUP)
$Button1 = GUICtr ...
kk_lee69 发表于 2012-9-15 13:37


改过了,刚才是重新拿源码来改的,一下没留意,谢谢关注.
 楼主| 发表于 2012-9-15 13:46:49 | 显示全部楼层
第一个按钮不起作用
 楼主| 发表于 2012-9-15 13:48:45 | 显示全部楼层
回复 4# kk_lee69

大哥再帮忙看看啊,刚才的错误我已经改了,第一个按钮不起作用,谢谢!
发表于 2012-9-15 13:53:34 | 显示全部楼层
是原本的按鈕不起作用  還是你後來的按鈕不起作用??
 楼主| 发表于 2012-9-15 14:08:22 | 显示全部楼层
是原本的按鈕不起作用  還是你後來的按鈕不起作用??
kk_lee69 发表于 2012-9-15 13:53


是原来的不起作用了,昨晚弄了一晚上,想不明白.
发表于 2012-9-15 14:11:55 | 显示全部楼层
回复 9# lnlyf


   
$Button2 = GUICtrlCreateButton("买入", 215, 2, 41, 17, $WS_GROUP)
GUICtrlSetOnEvent(-1, "Button1Click")


把这两行代码的顺序反过来~~

评分

参与人数 1金钱 +20 收起 理由
lnlyf + 20

查看全部评分

 楼主| 发表于 2012-9-15 14:13:07 | 显示全部楼层
我试过,如果多加几个按钮的话,只是最后一个起作用,不知问题在哪里.
 楼主| 发表于 2012-9-15 14:17:27 | 显示全部楼层
回复  lnlyf


   

把这两行代码的顺序反过来~~
annybaby 发表于 2012-9-15 14:11


这样可以了,谢谢啊!!!
原来是这么简单的问题,基础太差了.汗
发表于 2012-9-15 14:18:04 | 显示全部楼层
本帖最后由 annybaby 于 2012-9-15 14:19 编辑

回复 11# lnlyf

你要明白,上面的代码里面"-1"的含义,然后就会明白了

帮助文档里有的,如果实在不明白,或者不想了解,就直接使用控件ID来代替,这样就跟你放的位置关系不大了~~
 楼主| 发表于 2012-9-15 14:20:14 | 显示全部楼层
回复  lnlyf

你要明白,上面的代码里面"-1"的含义,然后就会明白了

帮助文档里有的,如果 ...
annybaby 发表于 2012-9-15 14:18


太谢谢了!!!
发表于 2012-9-15 14:21:39 | 显示全部楼层
回复 14# lnlyf


    不客气~~
相互帮助是应该的~~
您需要登录后才可以回帖 登录 | 加入

本版积分规则

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

GMT+8, 2024-11-15 06:47 , Processed in 0.088064 second(s), 28 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

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