Skocz do zawartości
  • 👋 Witaj na MPCForum!

    Przeglądasz forum jako gość, co oznacza, że wiele świetnych funkcji jest jeszcze przed Tobą! 😎

    • Pełny dostęp do działów i ukrytych treści
    • Możliwość pisania i odpowiadania w tematach
    • System prywatnych wiadomości
    • Zbieranie reputacji i rozwijanie swojego profilu
    • Członkostwo w jednej z największych społeczności graczy

    👉 Dołączenie zajmie Ci mniej niż minutę – a zyskasz znacznie więcej!

    Zarejestruj się teraz

Kilka porad co do małego bocika w AutoIT


iLikeMC

Rekomendowane odpowiedzi

Opublikowano

Witam, potrzebuję zrobić mini bocika do własnych potrzeb. Niestety jestem póki co baaardzo zielony w tych sprawach i nie wiem od czego zacząć kontynuacje mojego projektu. Oto lista rzeczy, które chcę jeszcze dodać:
- Jak kliknę raz F9 to funkcja "x1" się włączy i pokaże się komunikat w prawym dolnym roku, a jak kliknę drugi raz to pokaże się inna informacja i funkcja "x1" się zastopuje.
- Tak samo potrzebuję zrobić z funkcją "x2"
- Chcę też, aby wszystkie funkcje działały jednocześnie, a nie, że muszę wyłączyć "x1", aby działało "x2"

 

Proszę o jakieś małe podpowiedzi jak mógłbym to szybko i prosto zrobić.
Z góry dziękuję i pozdrawiam, iLikeMC.

 

#include <GUIConstantsEx.au3>
#include <StaticConstants.au3>
#include <WindowsConstants.au3>
#Region ### START Koda GUI section ### Form=
$Form1 = GUICreate("Mini bot by Aforex", 314, 121, 245, 189)
$Label1 = GUICtrlCreateLabel("F9 - funkcja x1", 16, 16, 86, 17, $SS_CENTER)
$Label2 = GUICtrlCreateLabel("F10 - funkcja x2", 16, 40, 80, 17, $SS_CENTER)
$Label3 = GUICtrlCreateLabel("F11 - funkcja x3", 16, 64, 84, 17, $SS_CENTER)
$Label4 = GUICtrlCreateLabel("Na potrzeby własne wykonał: xxx", 16, 88, 283, 17, $SS_RIGHT)
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###

;HotKeySets
HotKeySet( "{F9}", "x1")
HotKeySet( "{F10}", "x2")
HotKeySet( "{F11}", "x3")

;Funcs

Func x1()
   TrayTip( "Informacja", "abc", 2000)
   While 1
	  Send( "z")
	  Sleep(100)
   WEnd
EndFunc

Func x2()
   TrayTip( "Informacja", "abc", 2000)
   While 1
	  Send( "2")
	  Sleep(2000)
   WEnd
EndFunc

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

	EndSwitch
WEnd

Opublikowano

trzeci da się bez problemu osiągnąć poprzez "mieszanie funkcji" 

robisz jedną funkcję np 

 

$x1 = 1

$x2 = 1

If $x1 = 1 then ... 

If $x2 = 1 then ... 

If $x1 ... 

 

W przypadku $x2 = 0, wykona się tylko część związana z x1

 

 

 

@Edit:
Ex.

 

 

$x1 = 0
$x2 = 0
 
Func x1()
If $x1 = 0 Then
$x1 = 1
Else
$x1 = 0
EndIf
EndFunc
 
Func x2()
If $x2 = 0 Then
$x2 = 1
Else
$x2 = 0
EndIf
EndFunc
 
 
 
 
Func abc()
If $x1 = 1 and $x2 = 1 Then
TrayTip("Informacja","abc" & @CRLF & "abc",2000)
ElseIf $x1 = 1 Then
TrayTip("Informacja", "abc",2000)
ElseIf $x2 = 1 Then
TrayTip("Informacja", "abc",2000)
EndIf
 
While 1
If $x1 = 1 and $x2 =1 then
While 1 ; pamiętaj o warunku wyjścia z pętli!
For $i = 0 to 19
Send("z")
Sleep(100)
Next
Sleep(100)
Send("2z")
WEnd
ElseIf $x1 = 1 then
While 1 ; lub while $x1 = 1 and $x2 = 0
Send('z')
Sleep(100)
WEnd
ElseIf $x2 = 1 then
While 1 ; lub while $x1 = 1 and $x2 = 0
Send('2')
Sleep(2000)
WEnd
ElseIf $x1 = 0 and $x2 = 0 then
Sleep(10)
EndIf
WEnd
EndFunc

Oddajcie minusy! :(

Zarchiwizowany

Ten temat przebywa obecnie w archiwum. Dodawanie nowych odpowiedzi zostało zablokowane.

×
×
  • Dodaj nową pozycję...