Xhack
Vuoi reagire a questo messaggio? Crea un account in pochi click o accedi per continuare.
Xhack

Un forum dedicato all'hacking
 
IndiceIndice  PortalePortale  CercaCerca  Ultime immaginiUltime immagini  RegistratiRegistrati  Accedi  

 

 tutorial GUI

Andare in basso 
+6
darkphantom
Ale4ever
jackhack
certaindeath
AthanatiEste
darkjoker
10 partecipanti
Vai alla pagina : 1, 2  Successivo
AutoreMessaggio
darkjoker
Admin
Admin
darkjoker


Numero di messaggi : 813
Data d'iscrizione : 30.07.07

tutorial GUI Empty
MessaggioTitolo: tutorial GUI   tutorial GUI EmptyLun Set 24, 2007 5:17 pm

intanto vi spiego semplicemente che cos'è una GUI, essa è semplicemente composta da una o piu finestre, ciascuna delle quali contiene una o più controlli.
la spiegazione è molto semplice ma precisa.
su autoit è abbastanza semplice creare una gui.
le gui possono contenere:
label: semplice testo
button: pulsanti semplici
input: caselle di testo dove si possono inserire dei dati
edit: simili alle input, su queste si puo pero inserire qualcosa su piu righe
checkbox: una casella che puo essere selezionata o deselezionata
radio: casella circolare che puo essere selezionata o deselezionata (solo una tra tutte puo essere scelta)
combo: lista di oggetti tutti raggruppati in una casella
list: elenco di oggetti non raggruppati
date: fornisce la data del giorno
pic: contiene un'immagine
icon: si puo inserire un'icona
progress: una barra con senato un progresso
tab: gruppo di controlli che possono cambiare a seconda della "linguetta" che si seleziona (per esempio nelle proprietà del desktop il modo in cui ci si sposta, per esempio, da desktop a screen saver)
updown: piccola casela in cui si puo selezionare un numero (per esempio quando si seleziona la dimensione di un carattere)
avi: si puo inserire un videoclip in formato AVI
menu: menu in cima alla gui (esempio: il menu che permette di salvare, aprire, ecc su notepad)
treeview: apertura di cartelle con simboli + e - (esempio: modalità esplora)
oltre a questi ce ne sono ancora 2 o 3 che però sono ancora piu complicati, quindi per ora ci limiteremo a questi.


Come creare una GUI
Codice:

#include <GUIConstants.au3>

GUICreate("My GUI")
GUISetState (@SW_SHOW)
While 1
    $msg = GUIGetMsg()
   
    If $msg = $GUI_EVENT_CLOSE Then ExitLoop
Wend


notate che viene incluso il file guiconstants.au3, indispensabile per l'esecuizione della GUI.
viene usata poi l'istruzione guicreate, che serve per creare la gui vera e propria, i parametri richiesti sono solo il titolo della GUI, ma se volete potrete anche determinare l'altezza e la lunghezza della gui.
notate poi il ciclo while, quello dovrete lasciarlo cosi, se togliete quel ciclo la gui non potrà esistere, in poche parole serve per verificare che la richiesta della gui sia attiva (ovvero la gui esiste finche non viene premuto il pulsante chiudi [X].

i pulsanti
per creare un pulsante in una gui basta l'istruzione
guictrlcreatebutton ('testo nel pulsante', coordinate x e y, altezza, lunghezza)

in questo modo verrà creata una guicon il nostro pulsante, collocato nella posizione che abbiamo deciso.
vediamo ora un'esempio di pulsante:
Codice:

#include <GUIConstants.au3>

GUICreate("pulsanti")
GUISetState (@SW_SHOW)
$button = guictrlcreatebutton ('esegui notepad', 100, 130)
While 1
    $msg = GUIGetMsg()
   
    If $msg = $GUI_EVENT_CLOSE Then ExitLoop
    select
   case $msg = $button
      run ('notepad.exe')
    endselect
Wend

notate che è stato creato un pulsante e che gli è stata assegnata la variabile $button.
nel ciclo while ho aggiunto un select, seguito da case e endselect; queste tre operazioni funzionano un po'come if, elseif e endif, quindi si potrebbe leggere cosi:
se la variabile $msg è uguale alla variabile $button allora esegui notepad.
avrete capito che la variabile $msg viene utilizzata per decretare la scelta eseguita dal'utente, e in base a essa esegue delle operazioni, abbastanza chiaro?

l'unico problema forse è determinare le coordinate del pulsante e degli altri oggetti, fate come me, ho un metodo infallibile: provo a caso finche non trovo la posizione che voglio...
andiamo avanti con gli studi delle gui...
impariamo a inserire un'avi.

per inserire un'avi dobbiamo usare:
guictrlcreateavi ('percorso del file avi compreso il nome.avi, subfileid, coordinate x e y)
forse non saprete cos'è il subfileid, poco male, io ne ho solo una vaga idea, è semplicemente il numero di identificazione del videoclip se nel file selezionato ci sono piu video, giusto per complicarci un po'la vita... serve solo se il video da caricare si trova, per esempio, in file .dll, se invece volete aprire un normale .avi allora dove vi chiede il subfile id inserite -1, il resto è abbastanza semplice, vi chiede percorso del file e coordinate...
vediamo un'esempio pratico:
Codice:

#include <GUIConstants.au3>

GUICreate ("animazione",300,200)
GUISetState (@SW_SHOW)
$ani1 = GUICtrlCreateAvi (@SystemDir & "\shell32.dll",150, 50,10)

$buttonstart = GUICtrlCreateButton ("start",50,150,70,22)
$buttonstop  = GUICtrlCreateButton ("stop",150,150,70,22)

While 1
    $msg = GUIGetMsg()

    Select
      case $msg = $GUI_EVENT_CLOSE
        ExitLoop
       
      case $msg = $buttonstart
        GUICtrlSetState ($ani1, 1)
       
      case $msg = $buttonstop
        GUICtrlSetState ($ani1, 0)
       
    EndSelect
Wend
allora, viene creata l'animazione che verrà presa dalla shell32.dll nella cartella system32, il clip preso è quello della torcia che illumina la cartella... in questo script c'è pure un modo per far partire e stoppare l'avi, infatti sono stati creati due pulsanti, uno per farlo partire e l'altro per farlo fermare; gli sono state assegnate due variabili e nel ciclo select viene fatto in modo che se viene premuto il pulsante start viene inpostato il valore 1 (esegue) a $ani1 (ovvero la variabile assegnata a guictrlcreateavi), se viene premuto stop allora inposta il valore 0 (ferma) a $ani1, tutto cio grazie a GUICtrlSetState che permette di settare il valore di un'oggetto della gui.
tutto ok?
vediamo ancora qualcosina di piu semplice, come le label, che sono statiche e quindi non si fa un grande sforzo a metterle:
le label

per inserire una label basta mettere:
guictrlcreatelabel ('testo della label, coordinate x e y)
niente di difficile, vero?
ora facciamo una vera gui...
Codice:

#include <GUIConstants.au3>

GUICreate ("label")
guictrlcreaelabel ('questa è una label...', 100, 300)
GUISetState (@SW_SHOW)


While 1
    $msg = GUIGetMsg()

    Select
      case $msg = $GUI_EVENT_CLOSE
        ExitLoop
    EndSelect
Wend
semplice...

usiamo ora le input, tramite
guictrlcreateinput ('testo nella input lascia vuoto se la vuoi lasciare vuota, coordinaet x e y)

semplice
Codice:

#include <GUIConstants.au3>

GUICreate ('input')
GUISetState (@SW_SHOW)
$input = guictrlcreateinput('', 100, 121)
$button = guictrlcreatebutton ('click qui', 1,1)

While 1
    $msg = GUIGetMsg()

    Select
      case $msg = $GUI_EVENT_CLOSE
        ExitLoop
      case $msg = $button
   msgbox (0, '', guictrlread ($input))
    endselect
Wend

allora, viene creata una input e un pulsante, se viene permuto il pulsante, tramite guictrlread si puo "catturare" il testo della input e in questo caso della input a cui è stato assegnata la variabile $input, quindi ho creato una messagebox con testo il testo della input.
so che non sono il massimo nell'esprimermi, quindi se non capite qualcosa non esitate a chiedermi in questo topic, ok?
se avete capito tutti scrivetelo che cosi posso procedere con delle altre spiegazioni...

ciao
darkjoker
Torna in alto Andare in basso
AthanatiEste
apprendista
apprendista



Numero di messaggi : 15
Data d'iscrizione : 19.09.07

tutorial GUI Empty
MessaggioTitolo: Re: tutorial GUI   tutorial GUI EmptyLun Set 24, 2007 5:46 pm

Grazie mille spero di riuscire a capirlo tutto.
Torna in alto Andare in basso
certaindeath
Admin
Admin
certaindeath


Numero di messaggi : 343
Data d'iscrizione : 30.07.07

tutorial GUI Empty
MessaggioTitolo: Re: tutorial GUI   tutorial GUI EmptyLun Set 24, 2007 6:22 pm

Bene dark,
vedo che ti sei deciso a mettere anche questo tutorial..

per tutti gli utenti;
ci siamo addentrati in una parte un po' più complicata di autoit.
questo tutorial è fatto molto bene, quindi non scoraggiatevi e non esitate a chiedere.
Torna in alto Andare in basso
darkjoker
Admin
Admin
darkjoker


Numero di messaggi : 813
Data d'iscrizione : 30.07.07

tutorial GUI Empty
MessaggioTitolo: Re: tutorial GUI   tutorial GUI EmptyLun Set 24, 2007 6:24 pm

Citazione :
Grazie mille spero di riuscire a capirlo tutto.
non ti preoccupare, capirai tutto
Torna in alto Andare in basso
jackhack
spammer
spammer
jackhack


Numero di messaggi : 89
Localizzazione : TORINO
Data d'iscrizione : 18.09.07

tutorial GUI Empty
MessaggioTitolo: Re: tutorial GUI   tutorial GUI EmptyLun Set 24, 2007 7:07 pm

grazie darkjoker prima non capivo bene come fare un gui adesso con la spiegazione sopra è molti più semplice grazie jackhack
Torna in alto Andare in basso
Ale4ever
apprendista
apprendista
Ale4ever


Numero di messaggi : 33
Data d'iscrizione : 13.09.07

tutorial GUI Empty
MessaggioTitolo: Re: tutorial GUI   tutorial GUI EmptyLun Set 24, 2007 7:57 pm

Thanks Darkjoker!! Very Happy
Finalmente tutto più chiaro...




Ciauz!
Torna in alto Andare in basso
darkphantom
hack-member
hack-member
darkphantom


Numero di messaggi : 398
Data d'iscrizione : 03.09.07

tutorial GUI Empty
MessaggioTitolo: Re: tutorial GUI   tutorial GUI EmptyLun Set 24, 2007 10:27 pm

fantastico, sembra bellissimo! ho quasi capito! Very Happy Very Happy Very Happy Very Happy Very Happy
Torna in alto Andare in basso
Ale4ever
apprendista
apprendista
Ale4ever


Numero di messaggi : 33
Data d'iscrizione : 13.09.07

tutorial GUI Empty
MessaggioTitolo: Re: tutorial GUI   tutorial GUI EmptyLun Set 24, 2007 10:47 pm

Però volevo chiedere una cosa... Se io volessi creare una GUI dentro una GUI??
Cioè se io ho un programma del genere:
Codice:
#include <GUIConstants.au3>

GUICreate("GUI", 250, 70)
GUISetState ()
$button = GUICtrlCreateButton ("Ciao", 80, 15, 80, 40)

While 1
    $msg = GUIGetMsg()
 
    If $msg = $GUI_EVENT_CLOSE Then ExitLoop
   Select
      Case $msg = $button
      MsgBox (0, "Bene", "Hai cliccato ciao")
      ExitLoop
      EndSelect
Wend
Però al posto di fare una msgbox volessi creare una nuova GUI con dei nuovi pulsanti come dovrei fare?
Ringrazio qualunque aiuto...



Ciauz!
Torna in alto Andare in basso
Ale4ever
apprendista
apprendista
Ale4ever


Numero di messaggi : 33
Data d'iscrizione : 13.09.07

tutorial GUI Empty
MessaggioTitolo: Re: tutorial GUI   tutorial GUI EmptyLun Ott 01, 2007 7:58 pm

Up!
Torna in alto Andare in basso
abe93
membro importante
membro importante
abe93


Numero di messaggi : 205
Età : 31
Localizzazione : Piacenza
Data d'iscrizione : 18.08.07

tutorial GUI Empty
MessaggioTitolo: Re: tutorial GUI   tutorial GUI EmptyLun Ott 01, 2007 9:35 pm

cavolo difficilina questa
Torna in alto Andare in basso
http://www.abe93.altervista.org
darkjoker
Admin
Admin
darkjoker


Numero di messaggi : 813
Data d'iscrizione : 30.07.07

tutorial GUI Empty
MessaggioTitolo: Re: tutorial GUI   tutorial GUI EmptyMar Ott 02, 2007 1:48 pm

dovresti mettere al posto di @SW_SHOW che si trova in GUISetState () un altra macro solo che ora non so qual'è perche sono sul pc di scuola e non so neanche se funziona...
Torna in alto Andare in basso
jacohack
apprendista
apprendista
jacohack


Numero di messaggi : 21
Data d'iscrizione : 01.10.07

tutorial GUI Empty
MessaggioTitolo: Re: tutorial GUI   tutorial GUI EmptyMer Ott 03, 2007 4:44 pm

vi chiedo una cosa:
sto cercando di fare una GUI che ti fà ascoltare la musica qualche suggerimento ??? grazie jacohack
Torna in alto Andare in basso
certaindeath
Admin
Admin
certaindeath


Numero di messaggi : 343
Data d'iscrizione : 30.07.07

tutorial GUI Empty
MessaggioTitolo: Re: tutorial GUI   tutorial GUI EmptyMer Ott 03, 2007 5:19 pm

usa la funzione _SoundPlay("percorso del file musicale")
e abbinala a un pulsante...

P.S. riproduce solo file mp3 o wav...
se cerchi "play" sul file help in inglese trovi tutte le funzioni per riprodurre, stoppare e riprendere ecc...
se hai voglia puoi postarci il tuo "autoit media player"
Torna in alto Andare in basso
jacohack
apprendista
apprendista
jacohack


Numero di messaggi : 21
Data d'iscrizione : 01.10.07

tutorial GUI Empty
MessaggioTitolo: Re: tutorial GUI   tutorial GUI EmptyMer Ott 03, 2007 5:54 pm

grazie cert. vi mandero il programma ciaooooo
Torna in alto Andare in basso
jacohack
apprendista
apprendista
jacohack


Numero di messaggi : 21
Data d'iscrizione : 01.10.07

tutorial GUI Empty
MessaggioTitolo: Re: tutorial GUI   tutorial GUI EmptyMer Ott 03, 2007 6:12 pm

eccola la GUI che mi fa sentire la musica grazie cert

#include <GUIConstants.au3>

GUICreate ('input')
GUISetState (@SW_SHOW)
$button = guictrlcreatebutton ('click qui per Rihanna umbrella ',1,1)
$buttonz = guictrlcreatebutton ('click qui per max pezzali torno subito ',1,50)
$buttonc = guictrlcreatebutton ('click qui per bob sincler rock in this party',1,100)


while 1

$msg = GUIGetMsg()

Select
case $msg = $GUI_EVENT_CLOSE
ExitLoop
case $msg = $button
SoundPlay("C:\Documents and Settings\claudio\Desktop\musica\musica varia (e-z)\Rihanna - Umbrella.mp3")
case $msg = $GUI_EVENT_CLOSE
ExitLoop
case $msg = $buttonz
SoundPlay("C:\Documents and Settings\claudio\Desktop\musica\musica varia (e-z)\max pezzali - torno subito.mp3")
case $msg = $GUI_EVENT_CLOSE
ExitLoop
case $msg = $buttonc
SoundPlay("C:\Documents and Settings\claudio\Desktop\musica\musica varia (a-e)\Bob Sincler - Rock This Party.mp3")

endselect
Wend



grazie ciao jacohack
Torna in alto Andare in basso
darkjoker
Admin
Admin
darkjoker


Numero di messaggi : 813
Data d'iscrizione : 30.07.07

tutorial GUI Empty
MessaggioTitolo: Re: tutorial GUI   tutorial GUI EmptyMer Ott 03, 2007 6:26 pm

mettilo su un nuovo topic che tanto qua non lo vede nessuno...
Torna in alto Andare in basso
jacohack
apprendista
apprendista
jacohack


Numero di messaggi : 21
Data d'iscrizione : 01.10.07

tutorial GUI Empty
MessaggioTitolo: Re: tutorial GUI   tutorial GUI EmptyMer Ott 03, 2007 6:53 pm

ok va bene
Torna in alto Andare in basso
darkjoker
Admin
Admin
darkjoker


Numero di messaggi : 813
Data d'iscrizione : 30.07.07

tutorial GUI Empty
MessaggioTitolo: Re: tutorial GUI   tutorial GUI EmptyMer Ott 03, 2007 6:55 pm

dai un'occhiata alla chat, eh?
Torna in alto Andare in basso
Ale4ever
apprendista
apprendista
Ale4ever


Numero di messaggi : 33
Data d'iscrizione : 13.09.07

tutorial GUI Empty
MessaggioTitolo: Re: tutorial GUI   tutorial GUI EmptyVen Ott 05, 2007 3:57 pm

Ehi darkjoker mi potresti dire qual'è la macro a cui alludevi??
Torna in alto Andare in basso
darkphantom
hack-member
hack-member
darkphantom


Numero di messaggi : 398
Data d'iscrizione : 03.09.07

tutorial GUI Empty
MessaggioTitolo: Re: tutorial GUI   tutorial GUI EmptyVen Ott 05, 2007 8:43 pm

mica male la gui di jacohack...
Torna in alto Andare in basso
defender
apprendista
apprendista
defender


Numero di messaggi : 8
Età : 31
Data d'iscrizione : 28.11.07

tutorial GUI Empty
MessaggioTitolo: Re: tutorial GUI   tutorial GUI EmptyGio Dic 20, 2007 4:23 pm

scusate se la dom vi sebrera stupida... ma se volessi aprire una cartella cha voglio io (es:musica o documenti) che comando devo mettere????
Torna in alto Andare in basso
darkjoker
Admin
Admin
darkjoker


Numero di messaggi : 813
Data d'iscrizione : 30.07.07

tutorial GUI Empty
MessaggioTitolo: Re: tutorial GUI   tutorial GUI EmptyGio Dic 20, 2007 5:25 pm

aprirla...?
su 2 piedi non so... prova con qualcosa tipo:
Codice:

winopen
oppure con run... non so se il primo esiste o se il secondo funge...
ora non c'ho autoit attivo...
Torna in alto Andare in basso
darkphantom
hack-member
hack-member
darkphantom


Numero di messaggi : 398
Data d'iscrizione : 03.09.07

tutorial GUI Empty
MessaggioTitolo: Re: tutorial GUI   tutorial GUI EmptyGio Dic 20, 2007 5:48 pm

aprire in che senso? per fare cosa?
Torna in alto Andare in basso
darkjoker
Admin
Admin
darkjoker


Numero di messaggi : 813
Data d'iscrizione : 30.07.07

tutorial GUI Empty
MessaggioTitolo: Re: tutorial GUI   tutorial GUI EmptyGio Dic 20, 2007 5:54 pm

aprire come tu apri con un doppio click la cartella......... credo......
Torna in alto Andare in basso
defender
apprendista
apprendista
defender


Numero di messaggi : 8
Età : 31
Data d'iscrizione : 28.11.07

tutorial GUI Empty
MessaggioTitolo: Re: tutorial GUI   tutorial GUI EmptyGio Dic 20, 2007 6:13 pm

io vorrei fare un programma che, quando accendo il pc mi faccia aprire una cartella...
Torna in alto Andare in basso
Contenuto sponsorizzato





tutorial GUI Empty
MessaggioTitolo: Re: tutorial GUI   tutorial GUI Empty

Torna in alto Andare in basso
 
tutorial GUI
Torna in alto 
Pagina 1 di 2Vai alla pagina : 1, 2  Successivo
 Argomenti simili
-
» tutorial 3
» Tutorial 1
» tutorial 2
» [Tutorial] Man In The Middle complete
» [Tutorial] Creare uno shellcode da zero

Permessi in questa sezione del forum:Non puoi rispondere agli argomenti in questo forum.
Xhack :: Programmazione :: Autoit-
Vai verso: