--------------------------------------------------------------------------- [000] FAT TOME of VB part 1 of 6 [__2] --------------------------------------------------------------------------- ______________ _____ __ _____ | | \ \ | / / |__ __|__ __ __ _____ \ \ | / /__ | | | \ / | | ___ \ \ |/ / | | | . | \/ | --| __| _| \ \/ / . | | | | | --| | .| _| \ / | |________|_____|__|\/|__|_____| |__|_| \________/______| [Tome of VB part #1 of 6: The most-complete one [comprehensible] Sur une demande pas mal generale, j'ecris aujourdhui le debut d'une brique de 6 blocs. Le tout formera un gros referenciel en VB. Pour ceux qui savent pas se qu'est le VB voici se que c'est, VB veut dire Visual Basic, c'est un outil de programmation(compileur) et un language quand meme pas mal complet. C'est a mon avis le language de reference pour debuter en programmation. Donc, ceux que cela interesse on va pouvoir commencer :-) Notez que je n'ai pas ecrit autant d'articles dans se magazine qu'a mon habitude dut a certaines raisons qui font que jtai dans le "jus" :-) [on parle pas de quake2] Notez que je n'ecris pas un tutorial mais plutot un document qui pourrait eclairer certaines personnes. Je ne me donne pas la vertu d'ecrire la BIBLE du VB car si cela serait le cas, elle prendrait 600 TOMES au lieux de 6. Table des matieres du premier bloc (sur 6). ------------------------------------------- A) Structure principale d'un programme en Vb B) Comment se servir du IDE {Integrated Development Interface} C) Code "HELLO WORLD" avec explication D) Type de variables (var i) E) Type de controles standart, comment utiliser les autres F) Boucles (FOR/WHILE/DO) ------------------------------------------- -------------------------------------------- A) Structure principale d'un programme en Vb -------------------------------------------- Pour creer un programme en Visual Basic (dans ce present "tome" nous n'allons pas parler des autres types de "programmes", juste du programme standart qui contient une form (boite) et des boutons dessus par exemple. Donc pour creer un programme en Visual Basic vous allez devoir apprendre quelques notions de bases rapido presto, notez que cest ces connaisances qui vont vous faires comprendre tout le reste, si vous ne comprenez pas quelque chose, NE PASSEZ PAS A L'ETAPE SUIVANTE!. Creer un programme simple en VB se fait en 2 etapes, la conception visuelle et la mecanique. La conception visuelle consiste a se servir de boutons ou de boites (controles) sur une form(boite) car lorsque le code s'executera cest se que vous avez "desinner" qui appairatra. Contrairement au language normal dit ligne-par-ligne, le VB utilise une methode bien speciale, vous ne codez que ligne-par-ligne a l'interieur d'un action bien specifique. Par exemple vous codez se que va faire l'action d'appuyer sur un bouton. Ces reactions s'appellent des "EVENTS" [notez ca]. La mecanique c'est se que vous creer dans vos "EVENTS". A notez que vous pourriez coder un code VB sans aspect visuelle, un code pure qui n'affiche rien :-) Mais on en parlera pas maintenant. Donc: PROGRAMME VB ----> FORM -> EVENTS -> MECANIQUE -------------------------------------------------------------- B) Comment se servir du IDE {Integrated Development Interface} -------------------------------------------------------------- LE IDE dans Visual Basic 6 cest vb6.exe :-) C'est simple vous comprenez? C'est le programme qui vous permet de coder vos programmes. Il se compose de plusieurs parties differentes, mieux vaut savoir comment s'en servir. Si vous mettez votre VB en pleine ecran ca donne ceci: ----------------------------------------------------------------------- |_M_E_N_U_______________________________________________________________| | | _______________________ | | | | | | | Selection | |Composants| | FORM ou MECANIQUE | | | | | | | | | | | | | |___________| | | | | | | | | | | |Proprietes | | | | | | | | | | | | | | | | | | | | | | | | | | | |_______________________| | | | | | | | | | | | | | | |__________| | | | E C R A N | | | | | | | | | | | |___________________________________________________________|___________| Bon on voit que dans l'ecran il y a : - un menu standart - une boite COMPOSANTS a gacuhe - une boite qui peut etre une FORM ou une boite de code(mecanique) au centre - une boite de selection (utiliser lorsquun code contient plusieurs boites) - une boite de proprietees tres tres tres non-negligeable. ->Menu standart: Vous y trouvez les options classiques: compiler, executer, ouvrir, sauvegarder, fermer VB. ->Boite COMPOSANTS: La boite de composants contient des composants [cest logique]. Ses composants sont des controles en termes VB. ses controles font plusieurs choses, par exemple un controle peut creer un bouton sur votre "form"(boite). Un autre va servir d'emplacement ou on tape du texte.... a suivre de pres. ->Boite FORM/Code: Cette boite represente soit l'aspect visuel du programme (FORM) ou encore une boite de code ou vous taperez vos lignes de commandes en rapport au EVENT associer. ->Boite de selection: Permet de choisir plusieurs forms et modules(on verra ce terme plus tards) pour l'instant penser quaux forms(boites). -> Boite de proprietees: Les proprietees sappliquent a tout element du code, par exemple, avec cette boite vous pourrez changer le titre dans l'entete du programme, sa grosseur du point de vue ecran, son alignement, sa couleur de fond. Vous pourrez aussi modifier tout les proprietees des objets selectionnés. Pour mieux comprendre comment utiliser VB et son IDE a partir des informations donnees nous allons passer au prochain chapitre... -------------------------------------------------------------- C) Code "HELLO WORLD" avec explication -------------------------------------------------------------- Le code "HELLO WORLD" a toujours ete un classique dans tout les programmes, il s'agit bien entendu du premier code que tout programmeur fait quand il commence en lisant d'un manuel par exemple. Voici tout d'abord etape-par-etape comment proceder, par la suite nous allons revenir sur chacune des choses. 1 - Creer un nouveau projet (projet1) 2 - Vous verrez alors une form apparaitre qui s'appellera Form1 [noter que j'utilise VB anglais]. Donc il se pourrait que ca soit plutot feuille1. 3 - Double clicker sur la FORM en question, une boite de texte vous apparaitra (boite de code) et contiendra ceci: ----------------------- Private Sub FORM_LOAD() End Sub ----------------------- 4 - Entre les 2 lignes dans l'espace tapez : msgbox "Hello world!" 5 - C'est tout, appuyer sur F5 pour executer le nouveau programme. Vous devriez voir apparaitre une petite boite au centre de votre ecran avec comme titre FORM1 et comme contenu : Hello world! Maintenant je vous explique: :PRIVATE SUB FORM_LOAD() : :END SUB Cela veut dire, procedure privé(appartenant a la form en cours) qui s'apelle form_load. Il s'agit d'un EVENT. Le END SUB ferme la procedure et se qui est contenu entre les 2 est le code qui sera executer dans ce event. Form_load est un EVENT standart. Il s'agit du EVENT(reaction) qui occure quand la form se charge. Donc un form_load dans un cas comme celui ci est toujours present. Le MSGBOX "Hello world!" est une procedure interne au language VB qui envoie une boite de MSG (MSGBOX).Les parametres de format "phrase"(plutot string mais bon) sont tjour entre ". Si vous ne le comprenez pas tout de suite vous allez rusher un bout. Pkoi separer avec des "? C'est pour differencier des valeurs numeriques de valeurs caracteres. Par exemple on utilisera 5 sans " pour definir une valeur numerique egale a 5, "5" ne voudra pas dire la meme chose. Vous pouvez additionner 5+5 mais ps "5"+"5". 5+5 donnera 10, tandis que "5"+"5" donnera "55". les valeurs caracteres additionner ensemble se colle a droite du premier. Rendu a cette etape votre cerveau doit contenir des mouvements cinueux de comprehension sur le VB :-) C'est normal vous etes sur la voix de comprendre. Vous n'etes pas encore obliger de tout saisir, tout va etrangement s'eclairsir tout au long de ce texte. ----------------------------------------------------------------------- D) Type de variables (var i) ----------------------------------------------------------------------- Les variables sert a contenir des donnees, ca devient pratique pour programmer des calculs dynamiques ou pour stocker de l'information pertinante. Je vous explique donc les principaux types de variable: STRING = suite de caracteres = "abcdef..." INTEGER = valeur intégré (numerique sans .) [16bits] -32767..32767 LONG = valeur intégré (numerique sans .) [32bits] -(32767*32767)..(32767*32767) DOUBLE = 2 fois plus grosse que LONG BOOLEAN = Contient un VRAI ou un FAUX seulement. REAL = Valeur numerique avec virgule (On appelle ca quelque fois des FLOAT) BYTE = Valeur 8 bits contenant un chiffre entre 0 et 255. Il en existe d'autre et comme une fonction peut etre un type de variable, il est dure de vraiment tout cerner. Pour creer une variable dans un EVENT (par exemple FORM_LOAD) vous n'avez qu'a utiliser DIM pour debuter. Donc comme dans le cas du FORM_LOAD (hello world) de tout a l'heure nous allons placer le message dans une variable: Private Sub FORM_LOAD() Dim message as string message = "Hello World!" MsgBox message End Sub Vous comprenez? Sinon vous avez un serieux probleme, le VB est une langue tres logique tant quon peut sentendr sur le fait que = represente un egalité :-) Si on aurait voulu mettre le chiffre 8 par exemple, on aurait utiliser: Dim chiffre as integer chiffre = 8 msgbox chiffre On voit donc tres bien que "" est utiliser pour des valeurs de caracteres et non pas pour des valeurs numeriques. -------------------------------------------------------------- E) Type de controles standart et comment utiliser les autres -------------------------------------------------------------- Revenons donc a l'interface graphique de la premiere form (feuille/boite), il y a des elements(controles) qu'on peut deposer dessus pour creer notre programme, voici les principales: -> LABEL -> PICTUREBOX -> TEXTBOX -> LISTBOX -> BUTTON LABEL = Permet de placer du texte sur une form(feuille/boite). Vous placer le controle et vous ecrivez dedans via la propriété: CAPTION. (label1.caption en code) PICTUREBOX = Boite qui permet de placer un jpeg , un gif ou un bmp sur la form(feuille/boite). vous utiliser soit le tableau de propriété (.picture) pour mettre un image fixe qui va rester a l'interieur du exe(bundle). Ou encore de facon dynamique via le code: -> picture1.picture = loadpicture("C:\welove_vb.jpg") TEXTBOX = C'est une boite de texte ou on tape justement du texte :-). Vous pouvez predefinir une boite de texte avec un contenu via la proprietees : .text ou en code text1.text = "contenu". LISTBOX = La listBox permet d'entrer de l'information en bloc de une ligne chaque. Utiliser en code. list1.additem "contenu" pour creer un element ou list1.clear pour vider la boite. BUTTON = Les boutons permettent de creer des actions strategiques dans un code. Pour modifier se qui est ecrit dessus allez voir la prop. command1.caption. A notez qu'un controle peut etre utiliser comme une variable, cest tu pas fabuleux :-) Par exemple: Dim test1 as string test1 = text1.text msgbox test1 -- Ceci affichera le contenu dune boite de texte nommer text1.text Notez que vous pourrez aussi changer le nom d'un controle en utilisant sa propriete .name, mais n'oubliez pas que par la suite vous devriez verifier votre code pour pas vous retrouvez avec des commandes desuettes qui s'adresserait a l'ancien nom. Essayer pour le plaisir tout les controles, draggez en un sur la form et regarder ses proprietes, je ne peux pas trop trop entrer dans se sujet hasardeux car des controles ca se codent et de se fait meme il en existe plusieurs variantes. :-) Prenez donc 1h pour en essayer quelque un et essayer d'y placer un contenu. -------------------------------------------------------------- E) FOR/DO/WHILE [les boucles] -------------------------------------------------------------- Une boucle c'est pratique, tout code moyennement serieux en contient une infime partie. :-) Exemple de boucle FOR: : dim x as integer : For x = 1 to 20 : doevents : (...code.. a executer 20 fois) : next x -> Une boucle DO: : dim x as integer : x=0 : Do : Doevents : x = x +1 : (...code...a executer 20 fois) : : loop until x = 20 -> Une boucle WHILE: : dim x as integer : x=0 : while not (x=20) : doevents : x = x+1 : (...code..) : wend Les boucles appellent la repetition evidement, cest pratique pour faire un code qui fait 20 fois la meme chose au lieux de faire 20 codes identiques :-) Vous pouvez meme utiliser des commandes dynamiques a l'interieur. NB: Doevents et un code qui permet de pas faire geler le programme. Il va verifier se qui se fait ailleurs dans windows et si il reste du temps , il continue le code ce qui rend un programme tres stable pour son environnement. A vous maintenant de chercher sur les boucles, comme je l'ai deja stipuler je ne vais pas tout vous expliquez et encore vous prendre par la main :} -------------- TO BE CONTINUED NEXT MONTH: les IF, les fonctions et procedures, type public et prive, special SOCKET. Sans oublier les arrays. __2