|
| |
| Autore | Messaggio |
|---|
darkjoker Admin


Numero di messaggi: 813 Data d'iscrizione: 30.07.07
 | Oggetto: tutorial GUI Lun Set 24, 2007 3: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_________________ L'unico computer sicuro, è un computer spento. Nel software esiste sempre almeno un bug, generalmente è localizzabile tra la tastiera e la sedia  |
|  | | AthanatiEste apprendista

Numero di messaggi: 15 Data d'iscrizione: 19.09.07
 | Oggetto: Re: tutorial GUI Lun Set 24, 2007 3:46 pm | |
| Grazie mille spero di riuscire a capirlo tutto. |
|  | | certaindeath Admin


Numero di messaggi: 343 Data d'iscrizione: 30.07.07
 | Oggetto: Re: tutorial GUI Lun Set 24, 2007 4: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. |
|  | | darkjoker Admin


Numero di messaggi: 813 Data d'iscrizione: 30.07.07
 | Oggetto: Re: tutorial GUI Lun Set 24, 2007 4:24 pm | |
| | Citazione: | | Grazie mille spero di riuscire a capirlo tutto. |
non ti preoccupare, capirai tutto_________________ L'unico computer sicuro, è un computer spento. Nel software esiste sempre almeno un bug, generalmente è localizzabile tra la tastiera e la sedia  |
|  | | jackhack spammer


Numero di messaggi: 89 Localizzazione: TORINO Data d'iscrizione: 18.09.07
 | Oggetto: Re: tutorial GUI Lun Set 24, 2007 5:07 pm | |
| grazie darkjoker prima non capivo bene come fare un gui adesso con la spiegazione sopra è molti più semplice grazie jackhack |
|  | | Ale4ever apprendista


Numero di messaggi: 33 Data d'iscrizione: 13.09.07
 | Oggetto: Re: tutorial GUI Lun Set 24, 2007 5:57 pm | |
| Thanks Darkjoker!! Finalmente tutto più chiaro... Ciauz! |
|  | | darkphantom hack-member


Numero di messaggi: 398 Data d'iscrizione: 03.09.07
 | Oggetto: Re: tutorial GUI Lun Set 24, 2007 8:27 pm | |
| |
|  | | Ale4ever apprendista


Numero di messaggi: 33 Data d'iscrizione: 13.09.07
 | Oggetto: Re: tutorial GUI Lun Set 24, 2007 8: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! |
|  | | Ale4ever apprendista


Numero di messaggi: 33 Data d'iscrizione: 13.09.07
 | Oggetto: Re: tutorial GUI Lun Ott 01, 2007 5:58 pm | |
| |
|  | | abe93 membro importante


Numero di messaggi: 205 Età: 19 Localizzazione: Piacenza Data d'iscrizione: 18.08.07
 | Oggetto: Re: tutorial GUI Lun Ott 01, 2007 7:35 pm | |
| cavolo difficilina questa |
|  | | darkjoker Admin


Numero di messaggi: 813 Data d'iscrizione: 30.07.07
 | Oggetto: Re: tutorial GUI Mar Ott 02, 2007 11:48 am | |
| 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... _________________ L'unico computer sicuro, è un computer spento. Nel software esiste sempre almeno un bug, generalmente è localizzabile tra la tastiera e la sedia  |
|  | | jacohack apprendista


Numero di messaggi: 21 Data d'iscrizione: 01.10.07
 | Oggetto: Re: tutorial GUI Mer Ott 03, 2007 2:44 pm | |
| vi chiedo una cosa: sto cercando di fare una GUI che ti fà ascoltare la musica qualche suggerimento ??? grazie jacohack |
|  | | certaindeath Admin


Numero di messaggi: 343 Data d'iscrizione: 30.07.07
 | Oggetto: Re: tutorial GUI Mer Ott 03, 2007 3: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" |
|  | | jacohack apprendista


Numero di messaggi: 21 Data d'iscrizione: 01.10.07
 | Oggetto: Re: tutorial GUI Mer Ott 03, 2007 3:54 pm | |
| grazie cert. vi mandero il programma ciaooooo |
|  | | jacohack apprendista


Numero di messaggi: 21 Data d'iscrizione: 01.10.07
 | Oggetto: Re: tutorial GUI Mer Ott 03, 2007 4: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 |
|  | | darkjoker Admin


Numero di messaggi: 813 Data d'iscrizione: 30.07.07
 | Oggetto: Re: tutorial GUI Mer Ott 03, 2007 4:26 pm | |
| mettilo su un nuovo topic che tanto qua non lo vede nessuno... _________________ L'unico computer sicuro, è un computer spento. Nel software esiste sempre almeno un bug, generalmente è localizzabile tra la tastiera e la sedia  |
|  | | jacohack apprendista


Numero di messaggi: 21 Data d'iscrizione: 01.10.07
 | Oggetto: Re: tutorial GUI Mer Ott 03, 2007 4:53 pm | |
| |
|  | | darkjoker Admin


Numero di messaggi: 813 Data d'iscrizione: 30.07.07
 | Oggetto: Re: tutorial GUI Mer Ott 03, 2007 4:55 pm | |
| dai un'occhiata alla chat, eh? _________________ L'unico computer sicuro, è un computer spento. Nel software esiste sempre almeno un bug, generalmente è localizzabile tra la tastiera e la sedia  |
|  | | Ale4ever apprendista


Numero di messaggi: 33 Data d'iscrizione: 13.09.07
 | Oggetto: Re: tutorial GUI Ven Ott 05, 2007 1:57 pm | |
| Ehi darkjoker mi potresti dire qual'è la macro a cui alludevi?? |
|  | | darkphantom hack-member


Numero di messaggi: 398 Data d'iscrizione: 03.09.07
 | Oggetto: Re: tutorial GUI Ven Ott 05, 2007 6:43 pm | |
| mica male la gui di jacohack... |
|  | | |
Argomenti simili |  |
|
| | Permesso del forum: | Non puoi rispondere agli argomenti in questo forum
| |
| |
| |