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

[Pytanie]Kilka pytań żółtodzioba


Rekomendowane odpowiedzi

Opublikowano

Dotychczas zajmowałem się OpenGl'em ale postanowiłem go odłożyć i zabrać się za jakieś język, który umożliwi mi pisanie prostych apliakcji w windows i po 2 dniach nauki mam kilka pytań.

 

Liczę na brak hejtów.

 

1. Jak zrobić aby okenko działało w kółko np.: mam buttona start i po wykonaniu określonych czynności wszystko się zamyka. Co można na to poradzić by działało w "kółko" ?

2. Jak wyszukać część stringa np.: [email protected] i chce wyszykać fraze "mpc". Co można na to poradzić ?

3. I na przykład jak podaje współrzędne ekranu przy pisaniu programu w domu np.: 1920x920(przykładowa rozdzielczość) i program nie działa przy uruchomieniu go w niższej rozdzielczości np.: (1024x768)

Co można na to poradzić ?

 

Narazie tyle, a tu wrzucam kodzik:

#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>


Global $zmienna1 = ""
Global $zmienna2 = ""
$event = true
$server = true


$Form1 = GUICreate("Logowanie plemiona !", 600, 400, 400, 300, BitOr($WS_TILEDWINDOW, $WS_VSCROLL))
$button1 = GUICtrlCreateButton("Start", 10, 280 , 270, 100)
$button2 = GUICtrlCreateButton("Wyjście", 280, 280, 270, 100)
$text1 = GUICtrlCreateInput($zmienna1, 240, 107, 100, 20)
$text2 = GUICtrlCreateInput($zmienna2, 240, 148, 100, 20)
$label1 = GUICtrlCreateLabel("Login: ", 200, 110)
$label2 = GUICtrlCreateLabel("Haslo: ", 200, 150)
$zaznacz = GUICtrlCreateCheckbox("Sam chcesz dokonac wyboru serwera ?", 200, 170, 220, 20)


GUISetState(@SW_SHOW)
Do
$nMsg = GUIGetMsg()


$zmienna1 = GUICtrlRead($text1)
$zmienna2 = GUICtrlRead($text2)


Switch $nMsg
Case $GUI_EVENT_CLOSE
Exit


Case $button1


Run("C:\Program Files (x86)\Google\Chrome\Application\chrome.exe")
MouseMove(100, 25)
MouseClick("left")
Sleep(1000)
Send("www.plemiona.pl")
Send("{ENTER}")
MouseMove(1250, 375)
MouseClick("left")
Sleep(1000)
Send($zmienna1)
MouseMove(1250, 400)
MouseClick("left")
Send($zmienna2)
Sleep(1000)
MouseMove(1197, 417)
MouseClick("left")
Send("{Enter}")
Sleep(1000)
MouseMove(1200, 400)
MouseClick("left")
Send("{Enter}")
Sleep(1000)


If $server=true Then
Send("{Enter}")
EndIf


Exit


Case $button2


Exit






EndSwitch


If  GUICtrlRead($zaznacz) = $GUI_CHECKED Then
$server = false
EndIf


Until $event=false

Z góry dzięki za pomoc :)

 

Za ewentualne błędy przepraszam.

ywug.jpg



Smacznego

Opublikowano

w kólko to pętla

$s = 1
while 1
msgbox(0,"",$s)
$s+=1
wend

string


$s="mpc@forum"
$k=StringSplit($s,"@")
MsgBox(0,"",$k[1])
MsgBox(0,"",$k[2])

a rozdzielczość nie wiem

@edit

 

ju wiem

 

@desktopheight zwraca wysokość a @desktopwidth zwraca szerokość

wiec możesz pobawić się if then endif
np.

if @DesktopHeight<920 and @DesktopWidth<1920 then 
msgbox(0,"","Nieobsługiwana rozdzielczość")
exit
endif

	

nie jestem pewny ale chyba gitara :)

 

 

 

 

@edit
Straszny bałagan :)
mało wiesz. Łap. pomyśl. korzystaj z helpa. pytaj. pytaj. pytaj.

#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>


Global $zmienna1 = ""
Global $zmienna2 = ""
$event = true
$server = true

;----------------------------------------------------------------------------------------------------
$Form1 = GUICreate("Logowanie plemiona !", 600, 400, 400, 300, BitOr($WS_TILEDWINDOW, $WS_VSCROLL))
$button1 = GUICtrlCreateButton("Start", 10, 280 , 270, 100)
$button2 = GUICtrlCreateButton("Wyjście", 280, 280, 270, 100)
$text1 = GUICtrlCreateInput($zmienna1, 240, 107, 100, 20)
$text2 = GUICtrlCreateInput($zmienna2, 240, 148, 100, 20)
$label1 = GUICtrlCreateLabel("Login: ", 200, 110)
$label2 = GUICtrlCreateLabel("Haslo: ", 200, 150)
$zaznacz = GUICtrlCreateCheckbox("Sam chcesz dokonac wyboru serwera ?", 200, 170, 220, 20)
GUISetState(@SW_SHOW)
;----------------------------------------------------------------------------------------------------tu dobrze all 


;---------------------------tu ju nie bardzo
while 1 ;----------------------zmiana na while
$nMsg = GUIGetMsg()


$zmienna1 = GUICtrlRead($text1)
$zmienna2 = GUICtrlRead($text2)


Switch $nMsg
Case $GUI_EVENT_CLOSE
Exit


Case $button1
;wycianm te twoją zabawkę 
;I zrobimy funkcje 
klikaniemysza() ;<<<< odwołanie do funkcji

Case $button2
Exit ;          <<<< good
EndSwitch


;~ If  GUICtrlRead($zaznacz) = $GUI_CHECKED Then
;~ $server = false                                   Nie wiem co to robi wiec zostawie na później
;~ EndIf
WEnd;<---wend!!!



 func klikaniemysza()
	 Run("C:\Program Files (x86)\Google\Chrome\Application\chrome.exe")
MouseMove(100, 25)
MouseClick("left")
Sleep(1000)
Send("www.plemiona.pl")
Send("{ENTER}")
MouseMove(1250, 375)
MouseClick("left")
Sleep(1000)
Send($zmienna1)
MouseMove(1250, 400)
MouseClick("left")
Send($zmienna2);                             Wytłumacz czego nie wiesz jeszcze
Sleep(1000);                                 Zaraz coś przekombinujemy 
MouseMove(1197, 417);                        Pozdrawiam Feta 
MouseClick("left")
Send("{Enter}")
Sleep(1000)
MouseMove(1200, 400)
MouseClick("left")
Send("{Enter}")
Sleep(1000)



If $server=true Then
Send("{Enter}")
EndIf

endfunc

v^v^v^v^v^v^v^v^v^v^v^v^v^v^v^v^v^v^v^v^v^v^v^v^v^v^v^v^v^v^v
 

Opublikowano

 

w kólko to pętla

 

$s = 1
while 1
msgbox(0,"",$s)
$s+=1
wend

string

 


$s="mpc@forum"
$k=StringSplit($s,"@")
MsgBox(0,"",$k[1])
MsgBox(0,"",$k[2])

a rozdzielczość nie wiem

@edit

 

ju wiem

 

@desktopheight zwraca wysokość a @desktopwidth zwraca szerokość

wiec możesz pobawić się if then endif

np.

if @DesktopHeight<920 and @DesktopWidth<1920 then 
msgbox(0,"","Nieobsługiwana rozdzielczość")
exit
endif

	

nie jestem pewny ale chyba gitara :)

 

 

 

 

@edit

Straszny bałagan :)

mało wiesz. Łap. pomyśl. korzystaj z helpa. pytaj. pytaj. pytaj.

 

 

#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>


Global $zmienna1 = ""
Global $zmienna2 = ""
$event = true
$server = true

;----------------------------------------------------------------------------------------------------
$Form1 = GUICreate("Logowanie plemiona !", 600, 400, 400, 300, BitOr($WS_TILEDWINDOW, $WS_VSCROLL))
$button1 = GUICtrlCreateButton("Start", 10, 280 , 270, 100)
$button2 = GUICtrlCreateButton("Wyjście", 280, 280, 270, 100)
$text1 = GUICtrlCreateInput($zmienna1, 240, 107, 100, 20)
$text2 = GUICtrlCreateInput($zmienna2, 240, 148, 100, 20)
$label1 = GUICtrlCreateLabel("Login: ", 200, 110)
$label2 = GUICtrlCreateLabel("Haslo: ", 200, 150)
$zaznacz = GUICtrlCreateCheckbox("Sam chcesz dokonac wyboru serwera ?", 200, 170, 220, 20)
GUISetState(@SW_SHOW)
;----------------------------------------------------------------------------------------------------tu dobrze all 


;---------------------------tu ju nie bardzo
while 1 ;----------------------zmiana na while
$nMsg = GUIGetMsg()


$zmienna1 = GUICtrlRead($text1)
$zmienna2 = GUICtrlRead($text2)


Switch $nMsg
Case $GUI_EVENT_CLOSE
Exit


Case $button1
;wycianm te twoją zabawkę 
;I zrobimy funkcje 
klikaniemysza() ;<<<< odwołanie do funkcji

Case $button2
Exit ;          <<<< good
EndSwitch


;~ If  GUICtrlRead($zaznacz) = $GUI_CHECKED Then
;~ $server = false                                   Nie wiem co to robi wiec zostawie na później
;~ EndIf
WEnd;<---wend!!!



 func klikaniemysza()
	 Run("C:\Program Files (x86)\Google\Chrome\Application\chrome.exe")
MouseMove(100, 25)
MouseClick("left")
Sleep(1000)
Send("www.plemiona.pl")
Send("{ENTER}")
MouseMove(1250, 375)
MouseClick("left")
Sleep(1000)
Send($zmienna1)
MouseMove(1250, 400)
MouseClick("left")
Send($zmienna2);                             Wytłumacz czego nie wiesz jeszcze
Sleep(1000);                                 Zaraz coś przekombinujemy 
MouseMove(1197, 417);                        Pozdrawiam Feta 
MouseClick("left")
Send("{Enter}")
Sleep(1000)
MouseMove(1200, 400)
MouseClick("left")
Send("{Enter}")
Sleep(1000)



If $server=true Then
Send("{Enter}")
EndIf

endfunc

Z rozdziałką nie do końca mu o to chodziło. Jemu chodzi by program był... resposywny? działał responsywnie? Tzn. dostosowywał się do rozdzielczości.

 

Z tym to już musisz pobawić się w if (rozdzielczość = x) then... i dajesz konkretne ustawienia (ew. znaleźć jakąś zależność w odstępach px.). W gruncie rzeczy trochę matmy i nie powinno być problemów.

 

Z drugiej strony piszesz jakby "bota" do plemion, działając na chrome i koordynatach. Nie lepiej pobawić się w _IE i działać na elementach strony?

9obpmnjr.png

Opublikowano

Na początku wole zacząć od czegoś prostszego wg mnie w rozumieniu a potem w takie rzeczy jak _IE się pobawić.

Bo jako że się bawiłem w 3D to takie działania wydają mi się prostsze, ale mogę się mylić.

 

Ludzie uczą się na błędach.

 

 

@Edit

 

Jak uruchomić tym _IE chroma bo u mnie się tylko Internet Explorer włącza.

Oraz jak sprawdzić czy przeglądarka jest na full ekran czy tylko tak wiecie jest "mała" ?

ywug.jpg



Smacznego

Zarchiwizowany

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

×
×
  • Dodaj nową pozycję...