Executar el programa m3p4.exe per conèixer el seu comportament. Veure el llistat del codi del programa, m3p4. Executar Visual Basic per editar el projecte (acabat): m3p4.vbp. Un dauHeu de crear les sis cares del dau. Cadascuna d'aquestes serà un quadre de dibuix. Totes les cares portaran el mateix nom picDau, però portaran un índex del 0 al 5 que servirà per diferenciar-les. Així la cara que tindrà el número 1 serà picDau(0), la que tindrà el 2 serà picDau(1) i successivament. Esteu fent un vector d'objectes del tipus quadre de dibuix. El formulari que heu de crear, un cop acabat, serà semblant al mostrat aquí.Fase de disseny de la interfície d’usuariAquest projecte el desareu al directori C:\VBCurs\VBActivi\m3\p4 i li haureu de donar el nom m3p4.Dins el formulari principal heu de fer el dau amb sis cares. Feu la primera amb un quadre de dibuix i una forma que serà el puntet del número u i establiu les propietats:
Tema: Shape Subtema: Shape Control La forma que heu creat és el punt que heu de situar en el centre del quadre de dibuix. Ara falta crear les altres cinc cares del dau. La propietat AutoRedraw, nova en aquest projecte, s'utilitza per redibuixar el quadre de dibuix cada vegada que canvia la cara. Observeu què succeeix si aquesta propietat té el valor False. Per fer-les, agafeu la primera cara amb el seu punt i copieu-la a la carpeta. Després enganxeu-la al formulari. En aquest moment el Visual Basic informa que ja hi ha un control anomenat picDau i us demana la confirmació de que voleu crear un vector de controls. Respongueu afirmativament. Com que també teniu el puntet (shpPunt) se us demana si voleu fer un vector de formes. Respongueu, com abans, afirmativament. Ara tindreu les cares anomenades picDau(0) i picDau(1). A la cara picDau(1) li heu d'afegir el segon puntet. Copieu-lo a la carpeta i, estant activada la cara picDau(1), enganxeu-lo dins. Seguiu el mateix procés per tal de crear les altres quatre cares. Així disposareu d'un vector amb sis elements (del 0 al 5) amb les sis cares (de l'1 al 6). Finalment, poseu totes les cares una amunt de les altres: assigneu el valor False a la propietat Visible de totes menys en una. Ja teniu el dau preparat i el formulari quedarà tal com es veu a la primera figura d'aquesta activitat. Us queda afegir els objectes:
Fase de programació de respostes a eventsDeclaracions d'àmbit el formulariDeclareu una variable global NúmeroSortitDau per tenir l'estat inicial del dau. El procediment d'event Form_Load inicialitza l'estat del dau i prepara la funció aleatòria que simula el llançament d'un dau. En el moment d'inicialitzar la variable NúmeroSortitDau li assignareu el valor de l'índex corresponent a la cara que mostreu a l'usuari. En aquest cas serà el número 1.
Procediments associats a l'event Load Per al formulari principal:
Aquest procediment inicialitza el dau de forma que presenta la cara corresponent al dígit 1. Procediments associats a l'event Click Per al botó Llançar dau:
En llançar un dau observeu que dóna voltes, mostrant-nos un cert número de vegades la cara d'amunt i el seu número. El procediment anterior simula aquesta situació fent ús del Timer incorporat al formulari ja que el procediment cmdLlançarElDau_Click posa la propietat Enabled del rellotge a True, de manera que el rellotge respongui a l'event Timer, i cada vegada que s'esdevingui l'event, és a dir, cada 10 milisegons, faci una volta del dau. Aquest procediment es presenta tot seguit. Procediments associats a l'objecte Timer
Aquest procediment tmrDau_Timer és el que simula el llançament del dau. Observeu que es tracta de que cada vegada que s'esdevé l'event timer feu invisible la cara actual, simuleu un sorteig i feu visible la cara corresponent al número sortit. Aquestes accions han de repetir-se 10 vegades (simula que el dau dóna 10 voltes). Per tant, heu de tenir una variable que faci de comptador. Aquesta variable ha de ser declarada com Static ja que cada vegada que s'executi el procediment tmrDau_Timer ha de trobar-se aquesta variable amb el número de vegades que ha estat executat. Finalment, el mètode Refresh s'utilitza per redibuixar la cara. Tema: Static Subtema: Static Statement ExercicisPer enviar al professor tutor. (Directori C:\VBCurs\VBExerci\m3\p4 )E1. Simuleu un semàfor. Hi haurà un vector de tres objectes del tipus Picture Box i un objecte Timer. Cada 1 segon s'encén una part del semàfor i s'esborra l'anterior. Inicialment el semàfor està verd. La finestra principal del programa en mode edició ha de quedar més o menys així: La finestra principal del programa executant-se i ensenyant un color del semàfor ha de quedar més o menys així: Cal enviar els següents fitxers:
Fitxer formulari m3p4e1.frm Fitxer executable m3p4e1.exe |