Xhack

Un forum dedicato all'hacking
 
IndiceIndice  PortalePortale  CalendarioCalendario  FAQFAQ  CercaCerca  RegistratiRegistrati  Lista UtentiLista Utenti  GruppiGruppi  Accedi  

Condividi | 
 

 tutorial GUI

Andare in basso 
Vai alla pagina : 1, 2  Seguente
AutoreMessaggio
darkjoker
Admin
Admin
avatar

Numero di messaggi : 813
Data d'iscrizione : 30.07.07

MessaggioTitolo: tutorial GUI   Lun 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

_________________
L'unico computer sicuro, un computer spento.

Nel software esiste sempre almeno un bug, generalmente localizzabile tra la tastiera e la sedia

Torna in alto Andare in basso
Visualizza il profilo dell'utente
AthanatiEste
apprendista
apprendista


Numero di messaggi : 15
Data d'iscrizione : 19.09.07

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

Grazie mille spero di riuscire a capirlo tutto.
Torna in alto Andare in basso
Visualizza il profilo dell'utente
certaindeath
Admin
Admin
avatar

Numero di messaggi : 343
Data d'iscrizione : 30.07.07

MessaggioTitolo: Re: tutorial GUI   Lun 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
Visualizza il profilo dell'utente
darkjoker
Admin
Admin
avatar

Numero di messaggi : 813
Data d'iscrizione : 30.07.07

MessaggioTitolo: Re: tutorial GUI   Lun Set 24, 2007 6: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

Torna in alto Andare in basso
Visualizza il profilo dell'utente
jackhack
spammer
spammer
avatar

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

MessaggioTitolo: Re: tutorial GUI   Lun 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
Visualizza il profilo dell'utente
Ale4ever
apprendista
apprendista
avatar

Numero di messaggi : 33
Data d'iscrizione : 13.09.07

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

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




Ciauz!
Torna in alto Andare in basso
Visualizza il profilo dell'utente
darkphantom
hack-member
hack-member
avatar

Numero di messaggi : 398
Data d'iscrizione : 03.09.07

MessaggioTitolo: Re: tutorial GUI   Lun 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
Visualizza il profilo dell'utente
Ale4ever
apprendista
apprendista
avatar

Numero di messaggi : 33
Data d'iscrizione : 13.09.07

MessaggioTitolo: Re: tutorial GUI   Lun 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
Visualizza il profilo dell'utente
Ale4ever
apprendista
apprendista
avatar

Numero di messaggi : 33
Data d'iscrizione : 13.09.07

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

Up!
Torna in alto Andare in basso
Visualizza il profilo dell'utente
abe93
membro importante
membro importante
avatar

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

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

cavolo difficilina questa
Torna in alto Andare in basso
Visualizza il profilo dell'utente http://www.abe93.altervista.org
darkjoker
Admin
Admin
avatar

Numero di messaggi : 813
Data d'iscrizione : 30.07.07

MessaggioTitolo: Re: tutorial GUI   Mar 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...

_________________
L'unico computer sicuro, un computer spento.

Nel software esiste sempre almeno un bug, generalmente localizzabile tra la tastiera e la sedia

Torna in alto Andare in basso
Visualizza il profilo dell'utente
jacohack
apprendista
apprendista
avatar

Numero di messaggi : 21
Data d'iscrizione : 01.10.07

MessaggioTitolo: Re: tutorial GUI   Mer 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
Visualizza il profilo dell'utente
certaindeath
Admin
Admin
avatar

Numero di messaggi : 343
Data d'iscrizione : 30.07.07

MessaggioTitolo: Re: tutorial GUI   Mer 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
Visualizza il profilo dell'utente
jacohack
apprendista
apprendista
avatar

Numero di messaggi : 21
Data d'iscrizione : 01.10.07

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

grazie cert. vi mandero il programma ciaooooo
Torna in alto Andare in basso
Visualizza il profilo dell'utente
jacohack
apprendista
apprendista
avatar

Numero di messaggi : 21
Data d'iscrizione : 01.10.07

MessaggioTitolo: Re: tutorial GUI   Mer 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
Visualizza il profilo dell'utente
darkjoker
Admin
Admin
avatar

Numero di messaggi : 813
Data d'iscrizione : 30.07.07

MessaggioTitolo: Re: tutorial GUI   Mer Ott 03, 2007 6: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

Torna in alto Andare in basso
Visualizza il profilo dell'utente
jacohack
apprendista
apprendista
avatar

Numero di messaggi : 21
Data d'iscrizione : 01.10.07

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

ok va bene
Torna in alto Andare in basso
Visualizza il profilo dell'utente
darkjoker
Admin
Admin
avatar

Numero di messaggi : 813
Data d'iscrizione : 30.07.07

MessaggioTitolo: Re: tutorial GUI   Mer Ott 03, 2007 6: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

Torna in alto Andare in basso
Visualizza il profilo dell'utente
Ale4ever
apprendista
apprendista
avatar

Numero di messaggi : 33
Data d'iscrizione : 13.09.07

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

Ehi darkjoker mi potresti dire qual' la macro a cui alludevi??
Torna in alto Andare in basso
Visualizza il profilo dell'utente
darkphantom
hack-member
hack-member
avatar

Numero di messaggi : 398
Data d'iscrizione : 03.09.07

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

mica male la gui di jacohack...
Torna in alto Andare in basso
Visualizza il profilo dell'utente
defender
apprendista
apprendista
avatar

Numero di messaggi : 8
Et : 25
Data d'iscrizione : 28.11.07

MessaggioTitolo: Re: tutorial GUI   Gio 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
Visualizza il profilo dell'utente
darkjoker
Admin
Admin
avatar

Numero di messaggi : 813
Data d'iscrizione : 30.07.07

MessaggioTitolo: Re: tutorial GUI   Gio 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...

_________________
L'unico computer sicuro, un computer spento.

Nel software esiste sempre almeno un bug, generalmente localizzabile tra la tastiera e la sedia

Torna in alto Andare in basso
Visualizza il profilo dell'utente
darkphantom
hack-member
hack-member
avatar

Numero di messaggi : 398
Data d'iscrizione : 03.09.07

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

aprire in che senso? per fare cosa?
Torna in alto Andare in basso
Visualizza il profilo dell'utente
darkjoker
Admin
Admin
avatar

Numero di messaggi : 813
Data d'iscrizione : 30.07.07

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

aprire come tu apri con un doppio click la cartella......... credo......

_________________
L'unico computer sicuro, un computer spento.

Nel software esiste sempre almeno un bug, generalmente localizzabile tra la tastiera e la sedia

Torna in alto Andare in basso
Visualizza il profilo dell'utente
defender
apprendista
apprendista
avatar

Numero di messaggi : 8
Et : 25
Data d'iscrizione : 28.11.07

MessaggioTitolo: Re: tutorial GUI   Gio 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
Visualizza il profilo dell'utente
Contenuto sponsorizzato




MessaggioTitolo: Re: tutorial GUI   

Torna in alto Andare in basso
 
tutorial GUI
Torna in alto 
Pagina 1 di 2Vai alla pagina : 1, 2  Seguente
 Argomenti simili
-
» Come installare una mappa su Minecraft
» 1 video-tutorial sul C++: Come installare Code::Blocks
» Trucco per far cambiare idea ad un tuo amico prima di invaderti su Empires And Allies.
» Come permettere la visione dei video Youtube sui telefonini - Tutorial
» Codice - Tutorial Arduino Base #9 Accendere une LED con pulsante

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