De presentatie wordt gedownload. Even geduld aub

De presentatie wordt gedownload. Even geduld aub

Les 1 Objecten, Eigenschappen en Gebeurtenissen

Verwante presentaties


Presentatie over: "Les 1 Objecten, Eigenschappen en Gebeurtenissen"— Transcript van de presentatie:

1 Les 1 Objecten, Eigenschappen en Gebeurtenissen
Programmeren met Visual Basic Karl Moens

2 Overzicht Oplossing van de vorige oefening Hoe werkt een VB-programma?
Gebeurtenis-gestuurd Object-georiënteerd Objecten, eigenschappen en gebeurtenissen Oefening

3 Oplossing van de oefening
Voeg volgende lijn toe in de procedures Sub cmdBericht_Click() en Sub cmdWissen_Click() frmHello.BackColor = RGB(Int(256 * Rnd), Int(256 * Rnd), Int(256 * Rnd)) Willekeurig getal tussen 0 en 1 Formulier Eigenschap Functie die getalwaarden omzet in kleurwaarden Geheel getal functie

4 Hoe werkt een VB-programma?
Een VB-programma is gebeurtenis-gestuurd ("event driven"). Het wacht op gebeurtenissen en reageert daar dan op. Gebeurtenissen kunnen worden uitgelokt: extern (door de gebruiker of hardware); intern (door het programma zelf).

5 Hoe werkt een VB-programma?
Externe gebeurtenissen Interactie van de gebruiker met de visuele (grafische) interface van het programma. Interactie van (interne of externe) hardware (bijv. Printer-poort, seriële interface, …). Interne gebeurtenissen Het VB-programma zelf genereert gebeurtenissen waarop dan andere onderdelen van het programma kunnen reageren.

6 Hoe werkt een VB-programma?
Interactie van de gebruiker gaat via de diverse controls op de formulieren. Controls zijn een bijzondere vorm van objecten, nl. objecten die op een formulier kunnen worden geplaatst. Meestal hebben controls een visuele component (niet altijd: zie timer-control) VB is een object-georiënteerde programmeertaal.

7 Hoe werkt een VB-programma?
Het programma wacht tot wanneer een object een gebeurtenis uitlokt Is er code voor deze event? neen ja Voer code voor deze gebeurtenis uit

8 Objecten, eigenschappen en gebeurtenissen
De objecten worden bepaald door de waarde van hun eigenschappen. De gebeurteniscode zal zich moeten bezighouden met het uitlezen en aanpassen van deze eigenschappen.

9 Objecten, eigenschappen en gebeurtenissen
Het programma moet via de schuifbalken de basiskleuren "mengen" en laten zien als achtergrondkleur van het formulier. De waarde van de basiskleuren wordt apart getoond in een label-veld, hetzij als absolute waarde, hetzij als percentage.

10 Objecten, eigenschappen en gebeurtenissen
Open een nieuw project (Les1) Plaats op het formulier (frmLes1): drie horizontale scrollbalken (hsbRood, hsbGroen, hsbBlauw) Max=255; LargeChange=10 twee option buttons (optWaarde, optPercentage) optWaarde: Caption=Waarde; Value=True optPercentage: Caption=Percentage; Value=False een commandbutton (cmdSluiten) Caption=Sluiten drie labels (lblRood, lblGroen, lblBlauw) Caption=0; alignment=center Eigenschap frmLes1.Backcolor=0 (zwart)

11 Objecten, eigenschappen en gebeurtenissen
Gouden Regel 1: Initialiseer het programma zoveel mogelijk via de eigenschappen van de objecten reeds bij het aanmaken van de objecten.

12 Objecten, eigenschappen en gebeurtenissen
Het is eenvoudiger het uitzicht van de grafische interface te bepalen via de editor dan via het programma. VB neemt de initialisatie van de interface voor zijn rekening. Aanpassingen kunnen achteraf eenvoudig via de editor worden aangebracht, i.p.v. alle programmacode te moeten doorlopen.

13 Objecten, eigenschappen en gebeurtenissen
Analyse van de werking: Een sluitknop om het programma te stoppen (click) Twee optieknoppen om te kiezen tussen absolute waarden en percentages: bij het klikken op deze knoppen moeten de waarden onmiddellijk aanpassen (click) Drie schuifregelaars om de kleurwaarden in te stellen: de waarden/percentages in de labelvakken moeten de wijzigingen volgen (change; scroll)

14 Objecten, eigenschappen en gebeurtenissen
Voeg de 'End'-instructie toe aan de cmdSluiten_Click event Voor elk van de drie schuifbalken In de Change-event frmLes1.BackColor = RGB(hsbRood.Value, hsbGroen.Value, hsbBlauw.Value) lblBlauw.Caption = hsbBlauw Test het programma door op de pijltjes van de schuifbalk te klikken; door naast het schuifblokje te klikken; door het blokje te verschuiven.

15 Objecten, eigenschappen en gebeurtenissen
De Change-event reageert niet op het verschuiven van het blokje. Pas als het blokje wordt losgelaten wordt de Change-event uitgelokt. Pas dan is de waardeverandering definitief. Om continu de waarde aan te passen: Scroll-event. Voor elke (tussentijdse) aanpassing van de waarde wordt deze event uitgelokt. Het eenvoudigste is voor elke Scroll-event de Change-event uit te lokken (interne gebeurtenis!)

16 Objecten, eigenschappen en gebeurtenissen
Voeg toe in de Scroll-event van alle schuifbalken (aangepast aan de kleur) hsbBlauw_Change Test het programma opnieuw. Omschakelen tussen waarden en percentages: Waarden: 0 tot 255 Percentages: 0 tot 100  Percentage=waarde/2.55 De omschakelfactor wordt in een variabele (sngFactor) bewaard: deze is gelijk aan 1 als waarden worden getoond en 2.55 als percentages worden getoond.

17 Objecten, eigenschappen en gebeurtenissen
Definieer de variabele: Dim sngFactor as Single (enkele precisie decimale waarde) Initialiseer sngFactor in de Form_load-event sngFactor = 1 Pas de Change-events van de schuifbalken aan zodat rekening wordt gehouden met deze factor lblBlauw.Caption = Int(hsbBlauw / sngFactor) Click-event van de optieknoppen optPercentage: sngFactor = 2.55 optWaarde: sngFactor = 1

18 Objecten, eigenschappen en gebeurtenissen
De labelvakken moeten onmiddellijk opnieuw worden aangepast aan de nieuwe situatie: In de Click-events van de optieknoppen: lblBlauw.Caption = Int(hsbBlauw / sngFactor) lblGroen.Caption = Int(hsbGroen / sngFactor) lblRood.Caption = Int(hsbRood / sngFactor)

19 Objecten, eigenschappen en gebeurtenissen
Gouden Regel 2: I.p.v. aparte variabelen te gebruiken, gebruik zoveel mogelijk rechtstreeks de eigenschappen van de objecten. Op deze wijze blijft de waarde van de eigenschap en het uitzicht of status van het object altijd synchroon in het ganse programma.

20 Nomenclatuur Om de leesbaarheid van de programmatekst te verhogen worden de namen van objecten en controls voorzien van een "prefix" van drie letters, zodat het duidelijk is om wat voor type control het gaat. De prefix wordt in kleine letters geschreven en de naam van het object of de controil begint met een hoofdletter.

21 Nomenclatuur frm Form chk Checkbox cbo Combobox cmd Command-button fra
Frame hsb Horizontal Scrollbar vsb Vertical Scrollbar img Image lbl Label lst Listbox mnu Menu opt Optionbutton pic Picturebox txt Textbox tmr Timer obj Object

22 Oefening Pas het voorbeeldprogramma zo aan dat een klik op de scroll-pijltjes de waarde met 1, resp. 1% (afhankelijk van de gekozen optie) wordt aangepast. Idem (maar dan 10, resp. 10%) indien er naast het schuifblokje wordt geklikt.


Download ppt "Les 1 Objecten, Eigenschappen en Gebeurtenissen"

Verwante presentaties


Ads door Google