![]() ![]() ![]() |
![]() ![]() ![]() ![]() ![]() |
Executar el programa m2p2.exe per conèixer el seu comportament. Veure el llistat del codi del programa, m2p2. Executar Visual Basic per editar el projecte (acabat): m2p2.vbp. Càlcul d'una mitjanaAquesta activitat consisteix a introduir una llista numèrica (alçades de persones) de forma que, una vegada introduïda, el programa dóna la mitjana dels valors introduïts. Un aspecte nou que apareix a l'activitat és la sentència While... que s'utilitza quan cal fer un número d'iteracions que depèn d'una condició que s'avalua. Aquest número d'iteracions no és fix. El formulari que heu de crear conté objectes ja tractats anteriorment i, a més, un objecte quadre de llista. Se semblarà finalment a:![]() Fase de disseny de la interfície d’usuariCreeu un directori nou: C:\VBCurs\VBActivi\m2\p2 i un nou projecte, en aquest directori, que anomenareu m2p2. En ell, desareu tots els fitxers d'aquesta activitat. Establiu les propietats dels objectes que hi intervenen:
L'objecte nou utilitzat en aquest projecte és el quadre de llista. Aquest objecte serveix per a emplenar-lo amb una llista de valors mitjançant els mètodes específics d'aquest objecte i que s'especifiquen més avall. En aquest programa la llista s'emplenarà amb els valors d'alçades de persones. ![]() Fase de programació de respostes a eventsLes propietats i mètodes que es modifiquen en la fase de programació són els següents:Per a les propietats:
També heu de fer ús de tres dels mètodes dels quals disposen els quadres de llista:
![]() ![]() Procediments associats a l'event Click Botó AfegirElement
Botó EsborrarElement
Botó EsborraLlista
Botó Fi
En aquests tres procediments d'event Click podeu observar que: Per al botó AfegirElement, es fa servir el mètode AddItem. Anàlogament, per al botó EsborrarElement heu d'utilitzar el mètode RemoveItem. El botó de comandament que esborra un element de la llista comprova també si n'hi ha algun element seleccionat en aquest moment comprovant que la propietat ListIndex és diferent de zero. El codi associat al botó EsborrarLlista fa servir la funció MsgBox per demanar a l'usuari si realment vol esborrar tots els elements de la llista. En general, la funció MsgBox s'utilitza per presentar un missatge i demanar a l'usuari el seu acord, que realitza prement un botó. ![]() Per al botó cmdMitjana: El procediment que heu de crear i que serveix per calcular la mitjana dels valors introduïts a la llista és:
Aquest procediment incorpora la instrucció iterativa Do While que permet executar un nombre d'instruccions mentre es compleix una condició, especificada en el codi, o fins que es compleixi aquesta condició. ![]() Procediments associats a l'event KeyPress Per tal d'aconseguir que també s'afegeixi una dada quan premeu RETORN podeu fer un procediment d'event KeyPress per a la caixa txtValorIntroduït. L'event KeyPress es dóna sempre que premeu una tecla i el valor del paràmetre KeyAscii que recull del sistema és el codi ASCII de la tecla premuda. Caixa txtValorIntroduït
![]() Observeu la crida al procediment cmdAfegeix_Click Procediments associats a l'event Change Aquest event succeeix quan hi ha un canvi en el valor de l'objecte. Cada vegada que canvieu el valor de l'objecte txtLloc s'executarà el procediment següent: Caixa txtLloc
Declaracions, procediments i funcions d'àmbit formulari En aquest projecte només cal declarar, finalment, el valor de les constants MB_ICONEXCLAMATION, MB_YESNO, IDYES. Per això, cal que escriviu en la part general del formulari la instrucció:
![]() El Visual Basic incorpora el fitxer CONSTANTS.TXT que conté els noms i els valors de moltes de les constants que es poden utilitzar en els programes. Un exemple d'aquestes constants és el que heu observat en l'ajuda anterior. ExercicisPer enviar al professor tutor. (Directori C:\VBCurs\VBExerci\m2\p2 )E1. En un formulari heu de crear un objecte del tipus quadre combinat ![]() La finestra principal del programa ha de quedar més o menys així: ![]() Cal enviar els següents fitxers:
Fitxer formulari m2p2e1.frm Fitxer executable m2p2e1.exe |