Visual Basic 6.0 beginners
campinia
media
Roger Frans
Frans, Roger – Visual Basic 6.0 - beginners / Roger Frans; Geel: Campinia Media vzw, 1999; 238 p; index; 29 cm; gelijmd. ISBN: 90.356.1125.X; NUGI 854; UDC 681.3.06 Wettelijk depot België: D/1999/3941/20 Campinia Media vzw Kleinhoefstraat 4 B – 2440 – GEEL (Belgium) Tel.: (+32) 014/59 09 59 Fax: (+32) 014/59 03 44 e-Mail:
URL: <www.campiniamedia.be> Copyright 1999:
No part of this book may be reproduced in any form, by print, photoprint, microfilm or any other means without written permission of the publisher. Niets uit deze uitgave mag worden verveelvoudigd en/of openbaar gemaakt door middel van druk, fotokopie, print, microfilm of op welke andere wijze ook, zonder voorafgaande schriftelijke toestemming van de uitgever.
Inleiding De programmeertaal Basic (Beginners All Purpose Symbolic Instruction Code) werd in 1965 ontwikkeld aan het Darthmouth College. De taal werd ontworpen om te programmeren op kleine systemen. Het was immers de tijd dat de eerste microcomputers het daglicht zagen. De oorspronkelijke taal Basic heeft heel wat kritiek moeten slikken. Het was een taal die weinig structuren bezat en die niet erg krachtig was. In de loop der jaren is Basic uitgegroeid tot een volwaardige programmeertaal. Visual Basic 6.0 is een programmeeromgeving die gebaseerd is op de taal Basic. Visual Basic 6.0 is een product van de firma Microsoft. Een deel van de taal, Visual Basic for Applications, wordt ook gebruikt in de andere producten van Microsoft (b.v. Excel, Word, enz.). Mede hierdoor kent de taal een groot succes. Deze cursus, Visual Basic 6.0 - beginners, is zoals de naam het trouwens zegt, een cursus voor beginners. We leren de verschillende begrippen van het programmeren en van de taal Basic stapsgewijs kennen. Het is een doe-cursus. Dit betekent dat u de cursus doorneemt terwijl u voor de computer zit. U neemt per hoofdstuk de cursustekst door. Daarna maakt u de oefeningen die achteraan elk hoofdstuk zijn opgenomen. Bij de cursus hoort een diskette. Op deze diskette vindt u bestanden die u nodig hebt om de voorbeelden en oefeningen te kunnen uitwerken. Ook de voorbeelden uit de verschillende hoofdstukken, staan op de diskette. Op de diskette bevindt zich ook een bestand LeesMij.doc met last minute informatie. U kunt de inhoud van het bestand lezen door te dubbelklikken op het bestand. Ik hoop dat deze cursus u vertrouwd mag maken met Visual Basic 6.0. Indien u opmerkingen hebt die een latere uitgave kunnen verbeteren, kunt u die steeds kwijt aan de auteur.
Roger Frans september 1999
Inleiding - 1
2 – Visual Basic 6.0 - beginners
Inhoudstafel
INLEIDING ..................................................................................................................1 INHOUDSTAFEL ........................................................................................................3 1 KENNISMAKING MET VISUAL BASIC .............................................................11 1.1 Inleiding............................................................................................................................................ 11 1.2 Hardware en software...................................................................................................................... 11 1.3 Succesverhaal ................................................................................................................................... 11 1.4 Verschillende versies ........................................................................................................................ 12 1.5 Afspraken ......................................................................................................................................... 12 1.6 Visual Basic starten.......................................................................................................................... 13 1.7 Forms................................................................................................................................................ 14 1.8 Het projectvenster............................................................................................................................ 15 1.9 Form Layout..................................................................................................................................... 15 1.10 De toolbox......................................................................................................................................... 15 1.11 Het eigenschappenvenster................................................................................................................ 16 1.12 SDI of MDI....................................................................................................................................... 16 1.13 Een eerste project............................................................................................................................. 17 1.14 De gebruikersinterface maken ......................................................................................................... 18 1.14.1 Een object toevoegen door te slepen ........................................................................................... 18 1.14.2 Een object toevoegen door te dubbelklikken ............................................................................... 18 1.14.3 Verplaatsen van het label ........................................................................................................... 18 1.14.4 Een object van grootte wijzigen.................................................................................................. 19 1.14.5 Een object toevoegen door het te kopiëren.................................................................................. 19 1.14.6 De overige labels toevoegen....................................................................................................... 19 1.14.7 Een object verwijderen............................................................................................................... 20 1.14.8 De posities van de controls vergrendelen .................................................................................... 20 1.14.9 Positie wijzigen van vergrendelde controls ................................................................................. 20 1.15 Eigenschappen van een object instellen ........................................................................................... 20 1.15.1 De eigenschap Name.................................................................................................................. 20 1.15.2 De eigenschap Caption .............................................................................................................. 21 1.16 Tekstvakken aanbrengen ................................................................................................................. 22 1.17 Selectie van meerdere objecten ........................................................................................................ 22 1.18 Overige tekstvakken......................................................................................................................... 23 1.19 De eigenschap TabStop ..................................................................................................................... 24 1.20 Het project bewaren......................................................................................................................... 24 1.21 Het programma uitvoeren................................................................................................................ 25 1.22 Tabvolgorde ..................................................................................................................................... 26 1.23 Een Command Button...................................................................................................................... 26 1.24 Programmacode toevoegen .............................................................................................................. 27 1.24.1 Het venster voor programmacode ............................................................................................... 27 1.24.2 Help van Visual Basic................................................................................................................ 29 1.24.3 Commentaar .............................................................................................................................. 29 1.24.4 Declaratie van variabelen ........................................................................................................... 30 1.24.5 De waarde aflezen uit een tekstvak............................................................................................. 30 1.24.6 Een waarde in een tekstvak plaatsen ........................................................................................... 30 1.24.7 Opnieuw uitvoeren van het programma ...................................................................................... 31 1.25 De helpfunctie................................................................................................................................... 31 1.26 Het voorbeeld verder afmaken......................................................................................................... 32 1.27 De code bekijken vertrekkend vanaf het projectvenster ................................................................. 32 1.28 Commentaar..................................................................................................................................... 33
Inhoudstafel - 3
1.29 Variabelen.........................................................................................................................................33 1.29.1 Een variabele..............................................................................................................................33 1.29.2 Datatypes ...................................................................................................................................34 1.29.3 Declareren van variabelen...........................................................................................................35 1.29.4 Niet verplicht, tenzij... ................................................................................................................35 1.30 Operatoren........................................................................................................................................36 1.30.1 Rekenkundige operatoren............................................................................................................36 1.30.2 Operatoren voor tekenreeksen.....................................................................................................36 1.31 Functies .............................................................................................................................................37 1.31.1 Val-functie .................................................................................................................................37 1.31.2 Str-functie ..................................................................................................................................37 1.32 Naamgeving.......................................................................................................................................37 1.33 Oefeningen ........................................................................................................................................38
2
DE SELECTIE.................................................................................................... 41
2.1 Inleiding ............................................................................................................................................41 2.2 Inleidend voorbeeld...........................................................................................................................41 2.2.1 Probleemstelling .............................................................................................................................41 2.2.2 Ontwerpen van het scherm ..............................................................................................................42 2.3 De methode SetFocus ........................................................................................................................43 2.4 De eigenschap Default.......................................................................................................................44 2.5 Het IF-statement ...............................................................................................................................44 2.6 Het statement End.............................................................................................................................46 2.7 Variabelen op moduleniveau ............................................................................................................46 2.8 Bewaren en uitvoeren van het programma ......................................................................................46 2.9 Randomize en Rnd............................................................................................................................47 2.9.1 Randomize .....................................................................................................................................47 2.9.2 Rnd-functie.....................................................................................................................................47 2.9.3 Getallen tussen ...............................................................................................................................47 2.10 De Int- en Fix-functie ........................................................................................................................48 2.10.1 De Int-functie .............................................................................................................................48 2.10.2 De Fix-functie ............................................................................................................................48 2.11 Het Debug-venster ............................................................................................................................48 2.11.1 Oproepen van het Debug-venster ................................................................................................48 2.11.2 Enkele functies uittesten .............................................................................................................49 2.12 Logische uitdrukkingen (Conditions) ...............................................................................................49 2.12.1 Relationele operatoren ................................................................................................................49 2.12.2 Logische operatoren....................................................................................................................50 2.13 Meer over het type Variant...............................................................................................................50 2.13.1 Null en Empty ............................................................................................................................50 2.13.2 De functie VarType ....................................................................................................................51 2.13.3 De functie TypeName.................................................................................................................51 2.14 Standaard eigenschappen van controls ............................................................................................52 2.15 Kopiëren en plakken.........................................................................................................................52 2.16 Aanpassen van een werkbalk............................................................................................................52 2.17 Application Wizard...........................................................................................................................53 2.17.1 Wat?...........................................................................................................................................53 2.17.2 Starten van de Application Wizard..............................................................................................53 2.17.3 Starten van de toepassing............................................................................................................58 2.18 Oefeningen ........................................................................................................................................59
3
FOR/NEXT, EEN EENVOUDIGE ITERATIE...................................................... 61
3.1 Inleiding ............................................................................................................................................61 3.2 Het voorbeeld Optelsommen.............................................................................................................61 3.2.1 Probleemstelling .............................................................................................................................61 3.3 De interface maken ...........................................................................................................................62 3.3.1 Scherm een titel en naam geven ......................................................................................................62
4 – Visual Basic 6.0 - beginners
3.3.2 Een figuur opnemen ....................................................................................................................... 62 3.3.3 De eigenschappen Visible en Multiline........................................................................................... 63 3.4 Een menu opbouwen ........................................................................................................................ 64 3.4.1 De Menu Editor ............................................................................................................................. 64 3.4.2 Naamgeving bij menu’s.................................................................................................................. 65 3.5 Programmacode achter een menu-item plaatsen............................................................................. 65 3.6 Constanten-declaratie ...................................................................................................................... 66 3.7 De iteratie For / Next........................................................................................................................ 67 3.7.1 Uitleg For / Next ............................................................................................................................ 67 3.7.2 Syntax For / Next ........................................................................................................................... 67 3.7.3 Bijkomende voorbeelden................................................................................................................ 67 3.8 De methode Print ............................................................................................................................. 69 3.8.1 Syntax ........................................................................................................................................... 69 3.8.2 Spc().............................................................................................................................................. 69 3.8.3 Tab().............................................................................................................................................. 69 3.9 Een InputBox ................................................................................................................................... 70 3.9.1 Uitleg............................................................................................................................................. 70 3.9.2 Syntax ........................................................................................................................................... 70 3.9.3 Twips............................................................................................................................................. 71 3.10 Beep .................................................................................................................................................. 71 3.11 Een MsgBox...................................................................................................................................... 71 3.12 De module Einde en uittesten........................................................................................................... 73 3.13 Tekst met aanhalingstekens ............................................................................................................. 73 3.14 Oefeningen........................................................................................................................................ 73
4
DE GEWONE ITERATIE EN DE MEERVOUDIGE SELECTIE ..........................75
4.1 Inleiding............................................................................................................................................ 75 4.2 Een project en formulier kopiëren................................................................................................... 75 4.3 Meer over menu's............................................................................................................................. 75 4.3.1 Shortcut keys ................................................................................................................................. 75 4.3.2 Uitbreiden van het menu ................................................................................................................ 75 4.3.3 Checked......................................................................................................................................... 76 4.3.4 Enabled.......................................................................................................................................... 77 4.3.5 Een horizontale streep .................................................................................................................... 77 4.4 Testen op het vinkje ......................................................................................................................... 77 4.5 De programmacode achter Nieuw Spel ............................................................................................ 78 4.6 Do / Loop .......................................................................................................................................... 80 4.7 Select Case statement ....................................................................................................................... 81 4.8 Het statement MsgBox ..................................................................................................................... 82 4.9 Een zelfgemaakte functie ................................................................................................................. 83 4.9.1 Een zelfgedefinieerde functie ......................................................................................................... 83 4.9.2 Een procedure toevoegen................................................................................................................ 83 4.9.3 Parameters ..................................................................................................................................... 83 4.10 Een subprogramma oproepen.......................................................................................................... 84 4.10.1 Een eigen subprocedure ............................................................................................................. 84 4.10.2 Een procedure toevoegen via menukeuzen.................................................................................. 84 4.10.3 Uittesten .................................................................................................................................... 85 4.11 Een tweede formulier ....................................................................................................................... 85 4.11.1 Het statement Load .................................................................................................................... 87 4.11.2 De method Show........................................................................................................................ 87 4.11.3 De methode Hide ....................................................................................................................... 87 4.11.4 Het statement Unload................................................................................................................. 87 4.11.5 Projectvenster ............................................................................................................................ 87 4.11.6 Toepassing testen....................................................................................................................... 88 4.12 Startscherm van de toepassing......................................................................................................... 88 4.13 Compileren van een programma ..................................................................................................... 89
Inhoudstafel - 5
4.14 4.15
5
Een programmagroep maken ...........................................................................................................89 Oefeningen ........................................................................................................................................91
ALGEMENE MODULE EN GLOBALE VARIABELEN ...................................... 93
5.1 Inleiding ............................................................................................................................................93 5.2 Voorbeeld H5VB1.VBP.....................................................................................................................93 5.3 Maateenheden ...................................................................................................................................93 5.3.1 Instellen grootte scherm ..................................................................................................................93 5.3.2 Twips .............................................................................................................................................94 5.4 Ontwikkelen van het menu ...............................................................................................................94 5.5 De menukeuze Sluiten.......................................................................................................................94 5.6 De menukeuze Naam Ingever ...........................................................................................................95 5.7 Een nieuwe procedure maken...........................................................................................................95 5.8 Bij het laden van het formulier.........................................................................................................96 5.9 Globale variabelen ............................................................................................................................96 5.10 De menukeuzen Bestand / Artikel en Bestand / Klant......................................................................98 5.10.1 Bestand / Artikel.........................................................................................................................98 5.10.2 Bestand / Klant ...........................................................................................................................98 5.11 De menukeuze Help / Over ...............................................................................................................98 5.12 Het formulier frmArtikel maken......................................................................................................98 5.12.1 Schermontwerp...........................................................................................................................98 5.12.2 Bij het activeren........................................................................................................................100 5.12.3 Bewaren ...................................................................................................................................100 5.12.4 Programmacode bij de knop Annuleer.......................................................................................100 5.12.5 Programmacode bij de knop Bewaar .........................................................................................100 5.12.6 Berekenen van BTW en Eenheidsprijs met BTW.......................................................................101 5.13 Tabvolgorde ....................................................................................................................................102 5.14 Klikken is meer dan alleen maar klikken.......................................................................................102 5.15 Enkel cijfers ingeven? .....................................................................................................................102 5.16 Het formulier frmKlant ..................................................................................................................103 5.16.1 Ontwerp van het formulier ........................................................................................................103 5.16.2 TabIndex ..................................................................................................................................104 5.16.3 Bij het activeren........................................................................................................................104 5.16.4 De programmacode achter de knop Bewaar...............................................................................104 5.16.5 De programmacode achter Annuleer..........................................................................................105 5.17 De eigenschap Locked.....................................................................................................................105 5.18 De functie Format ...........................................................................................................................105 5.18.1 Weergave van getallen..............................................................................................................106 5.18.2 Weergave van tijden en datums.................................................................................................108 5.18.3 Strings......................................................................................................................................110 5.19 Afdrukken van een scherm en/of code............................................................................................110 5.20 Oefeningen ......................................................................................................................................111
6
MODULES EN PROCEDURES ....................................................................... 113
6.1 Inleiding ..........................................................................................................................................113 6.2 Modules ...........................................................................................................................................113 6.2.1 Form module ................................................................................................................................113 6.2.2 Standard module...........................................................................................................................113 6.2.3 Class module ................................................................................................................................113 6.3 Procedures.......................................................................................................................................114 6.3.1 Subprocedures ..............................................................................................................................114 6.3.2 Functieprocedures.........................................................................................................................115 6.3.3 Property procedures ......................................................................................................................115 6.3.4 Event procedures ..........................................................................................................................115 6.4 Private, Public en Friend, Static .....................................................................................................115 6.5 Argumenten van een procedure......................................................................................................116 6.5.1 Syntax ..........................................................................................................................................116
6 – Visual Basic 6.0 - beginners
6.5.2 Een voorbeeld van ByVal en ByRef ............................................................................................. 116 6.5.3 Optionele parameters.................................................................................................................... 117 6.5.4 Een onbekend aantal argumenten.................................................................................................. 119 6.6 De functie IsMissing ....................................................................................................................... 120 6.7 Het statement For Each / Next....................................................................................................... 120 6.8 Oproepen van procedures in andere modules ............................................................................... 120 6.8.1 Oproepen van procedures in forms ............................................................................................... 120 6.8.2 Oproepen van procedures in een standaard module ....................................................................... 120 6.9 Oefeningen...................................................................................................................................... 120
7
ARRAYS, CONTROL ARRAYS EN MENU CONTROL ARRAYS ...................123
7.1 Inleiding.......................................................................................................................................... 123 7.2 Matrices.......................................................................................................................................... 123 7.3 Voorbeeld H7VB1 .......................................................................................................................... 123 7.3.1 Declareren van een array.............................................................................................................. 123 7.3.2 Aanmaken scherm........................................................................................................................ 124 7.3.3 Opvullen van de array .................................................................................................................. 124 7.3.4 Afdrukken van de woorden .......................................................................................................... 125 7.3.5 Testen van het programma............................................................................................................ 125 7.3.6 Bewaren van het project ............................................................................................................... 126 7.4 De statements Dim, Private en Public m.b.t. matrices................................................................... 126 7.5 Option Base .................................................................................................................................... 126 7.6 Meerdimensionale matrices ........................................................................................................... 126 7.6.1 Het voorbeeld H7VB2.................................................................................................................. 127 7.6.2 Declaratie van de matrix............................................................................................................... 127 7.6.3 Opvullen van de matrix ................................................................................................................ 127 7.6.4 Afdrukken van de resultaten ......................................................................................................... 128 7.7 De functies Left, Right, Mid en Len............................................................................................... 128 7.7.1 De functie Left ............................................................................................................................. 129 7.7.2 De functie Right........................................................................................................................... 129 7.7.3 De functie Mid............................................................................................................................. 129 7.7.4 De functie Len ............................................................................................................................. 129 7.8 Dynamische arrays......................................................................................................................... 129 7.8.1 Dynamische arrays ....................................................................................................................... 129 7.8.2 Syntax ......................................................................................................................................... 130 7.9 Control arrays................................................................................................................................ 130 7.10 Control arrays bij menu’s .............................................................................................................. 130 7.10.1 H7VB3 .................................................................................................................................... 130 7.10.2 Een control array bij een menu................................................................................................. 130 7.10.3 Programmacode bij Bestand / Sluiten ....................................................................................... 131 7.10.4 Programmacode bij de kleuren ................................................................................................. 131 7.11 Een control array ........................................................................................................................... 132 7.11.1 H7VB4 .................................................................................................................................... 132 7.11.2 Programmacode bij het laden van het formulier ........................................................................ 133 7.11.3 Programmacode bij de opdrachtknop Toon............................................................................... 133 7.11.4 Uittesten .................................................................................................................................. 133 7.12 Oefeningen...................................................................................................................................... 133
8
SEQUENTIËLE BESTANDEN .........................................................................135
8.1 Inleiding.......................................................................................................................................... 135 8.2 H8VB1.VBP.................................................................................................................................... 135 8.2.1 H8VB1A.FRM............................................................................................................................. 135 8.2.2 Menustructuur.............................................................................................................................. 136 8.2.3 Niet volledig ingevuld? ................................................................................................................ 136 8.2.4 Programmacode ........................................................................................................................... 137 8.3 Items toevoegen in lijsten ............................................................................................................... 138 8.4 De functie Space ............................................................................................................................. 138 8.5 Items verwijderen uit lijsten .......................................................................................................... 138
Inhoudstafel - 7
8.5.1 Opzet............................................................................................................................................138 8.5.2 Programmacode ............................................................................................................................139 8.5.3 De eigenschap ListIndex ...............................................................................................................139 8.5.4 De methode RemoveItem..............................................................................................................139 8.5.5 De eigenschap ListCount ..............................................................................................................139 8.5.6 De eigenschap List() .....................................................................................................................139 8.5.7 De methode Clear .........................................................................................................................140 8.6 De control CommonDialog .............................................................................................................140 8.6.1 Toevoegen van een control aan de toolbox ....................................................................................140 8.6.2 Toevoegen van de control aan het project ......................................................................................141 8.7 Een nieuw bestand ..........................................................................................................................142 8.8 Opslaan Als .....................................................................................................................................143 8.8.1 De methode ShowSave .................................................................................................................143 8.8.2 De eigenschap CancelError ...........................................................................................................143 8.8.3 Het statement On Error Goto.........................................................................................................143 8.8.4 De procedure Bewaar....................................................................................................................143 8.9 Sequentiële bestanden.....................................................................................................................144 8.9.1 Programmacode ............................................................................................................................144 8.9.2 Een sequentieel bestand openen en sluiten.....................................................................................144 8.9.3 Schrijven naar een sequentieel bestand met PRINT #.....................................................................144 8.9.4 Het Write-statement......................................................................................................................145 8.10 Bestand / Opslaan ...........................................................................................................................145 8.11 Lezen uit een sequentieel bestand...................................................................................................146 8.11.1 De programmacode...................................................................................................................146 8.11.2 Inlezen van het bestand.............................................................................................................146 8.11.3 Het Input-statement ..................................................................................................................147 8.11.4 De menukeuze Sluiten ..............................................................................................................147 8.12 Oefeningen Frans - Nederlands ......................................................................................................147 8.13 Een tweede formulier......................................................................................................................148 8.14 Code bij Nieuw................................................................................................................................149 8.14.1 Programmacode........................................................................................................................149 8.14.2 De functie WillGetal.................................................................................................................150 8.14.3 Tekst selecteren ........................................................................................................................150 8.15 De knop Controleer.........................................................................................................................150 8.16 Terug naar het eerste formulier .....................................................................................................151 8.17 De menukeuze Help ........................................................................................................................151 8.18 Het statement Line Input................................................................................................................151 8.19 De functie Input ..............................................................................................................................151 8.20 De functie Lof..................................................................................................................................152 8.21 Oefeningen ......................................................................................................................................152
9
DATABASES ................................................................................................... 155
9.1 Inleiding ..........................................................................................................................................155 9.2 Een database ontwerpen .................................................................................................................155 9.2.1 De database maken .......................................................................................................................155 9.2.2 Tabel maken .................................................................................................................................156 9.2.3 Velden van de tabel.......................................................................................................................157 9.3 Gegevens ingeven via Data Manager..............................................................................................157 9.4 Toegang tot de database in Visual Basic met DataControl ............................................................158 9.5 Recordsets .......................................................................................................................................161 9.6 Gegevens toevoegen.........................................................................................................................161 9.7 Andere databases ............................................................................................................................162 9.8 Een tweede tabel aanmaken............................................................................................................162 9.9 Ontwerpen van het formulier .........................................................................................................163 9.10 De control Timer.............................................................................................................................165 9.10.1 Een timer..................................................................................................................................165
8 – Visual Basic 6.0 - beginners
9.10.2 De code achter de knop cmdSluiten .......................................................................................... 165 9.10.3 De opdrachtknoppen In en Uit.................................................................................................. 165 9.10.4 Het programma runnen ............................................................................................................ 166 9.11 Verschillende methodes.................................................................................................................. 167 9.11.1 Verplaatsen van de recordwijzer............................................................................................... 167 9.11.2 Toevoegen van een record........................................................................................................ 167 9.11.3 Wijzigen van een record........................................................................................................... 167 9.11.4 Verwijderen van een record...................................................................................................... 167 9.11.5 Zoeken naar een bepaald record ............................................................................................... 167 9.11.6 Het aantal records tellen........................................................................................................... 168 9.12 Data Bound Grid............................................................................................................................ 168 9.13 Data Form Wizard ......................................................................................................................... 168 9.14 Oefeningen...................................................................................................................................... 172
10
FOUTEN, FOUTEN OPVANGEN EN DEBUGGEN ......................................173
10.1 Inleiding.......................................................................................................................................... 173 10.2 Voorbeeld H10VB1.VBP................................................................................................................ 173 10.3 Schrijffouten................................................................................................................................... 174 10.3.1 Een voorbeeld.......................................................................................................................... 174 10.3.2 De instelling Require Variable Declaration............................................................................... 175 10.4 Syntax-fouten ................................................................................................................................. 175 10.4.1 Een voorbeeld.......................................................................................................................... 175 10.4.2 De instelling Auto Syntax Check.............................................................................................. 175 10.5 Run time fouten.............................................................................................................................. 176 10.5.1 Voorbeeld 1 ............................................................................................................................. 176 10.5.2 Voorbeeld 2 ............................................................................................................................. 176 10.6 Logische fouten............................................................................................................................... 177 10.7 Mijn programma, een bug? ........................................................................................................... 177 10.8 Step................................................................................................................................................. 177 10.8.1 Knoppen en menukeuzen ......................................................................................................... 177 10.8.2 Step Into: voorbeeld................................................................................................................. 178 10.8.3 Step Over: voorbeeld ............................................................................................................... 179 10.9 Breakpoints .................................................................................................................................... 180 10.10 Een watch ................................................................................................................................... 181 10.10.1 Add watch ............................................................................................................................... 181 10.10.2 Edit watch................................................................................................................................ 182 10.11 Instant watch.............................................................................................................................. 182 10.12 Andere menukeuzes ................................................................................................................... 183 10.12.1 Locals Window........................................................................................................................ 183 10.12.2 Call Stack ................................................................................................................................ 183 10.12.3 Set Next Statement................................................................................................................... 184 10.12.4 Show Next Statement............................................................................................................... 184 10.12.5 Run To Cursor ......................................................................................................................... 184 10.13 Foute invoer opvangen ............................................................................................................... 184 10.13.1 Voorbeeld H10VB3.VBP ......................................................................................................... 184 10.13.2 De functie IsNumeric ............................................................................................................... 185 10.13.3 De functie IsDate ..................................................................................................................... 185 10.14 Trappable errors........................................................................................................................ 185 10.15 On Error Goto............................................................................................................................ 187 10.15.1 Het statement On Error ............................................................................................................ 187 10.15.2 De foutafhandelingsroutine ...................................................................................................... 188 10.15.3 Het statement Resume.............................................................................................................. 188 10.15.4 De functie Error of de eigenschap Description .......................................................................... 188 10.16 Oefeningen ................................................................................................................................. 189
11
EEN PROGRAMMA VERDELEN..................................................................191
11.1
Inleiding.......................................................................................................................................... 191
Inhoudstafel - 9
11.2 Een splash screen ............................................................................................................................191 11.3 Starten van een toepassing vanuit een procedure...........................................................................192 11.3.1 Aanmaken van de standaard module .........................................................................................192 11.3.2 De procedure Main ...................................................................................................................192 11.3.3 Starten met Sub Main ...............................................................................................................193 11.3.4 Uittesten...................................................................................................................................193 11.4 Een tijdsvertraging inbouwen.........................................................................................................193 11.5 Naam en versienummer van een programma.................................................................................194 11.5.1 Bij het laden … ........................................................................................................................194 11.5.2 Instellen....................................................................................................................................194 11.6 Een pictogram voor het programma ..............................................................................................195 11.7 Installatiediskettes maken met een wizard .....................................................................................195 11.8 Installeren van het programma ......................................................................................................201 11.9 Programma terug verwijderen .......................................................................................................203 11.10 Opnieuw een package maken .....................................................................................................204 11.11 Oefeningen ..................................................................................................................................204
12
HELPSCHERMEN MAKEN .......................................................................... 205
12.1 Inleiding ..........................................................................................................................................205 12.2 Helpschermen .................................................................................................................................205 12.2.1 HTML-bestanden .....................................................................................................................205 12.2.2 Links creëren............................................................................................................................205 12.2.3 De links testen ..........................................................................................................................206 12.3 De HTML Workshop......................................................................................................................207 12.3.1 Installeren.................................................................................................................................207 12.3.2 Starten van HTML Workshop ...................................................................................................207 12.4 Het projectbestand..........................................................................................................................208 12.4.1 Wat is het?................................................................................................................................208 12.5 Het Help-bestand ............................................................................................................................212 12.6 De inhoudstafel ...............................................................................................................................212 12.7 Een tabblad Index...........................................................................................................................216 12.8 Opties toevoegen .............................................................................................................................218 12.9 Context-afhankelijke help...............................................................................................................220 12.9.1 C header file aanmaken.............................................................................................................220 12.9.2 Mapping en aliasing in het projectbestand .................................................................................220 12.10 Toepassing in Visual Basic..........................................................................................................222 12.10.1 Helpbestand koppelen aan de toepassing ...................................................................................222 12.10.2 Het helpbestand oproepen vanuit een menukeuze ......................................................................223 12.10.3 Context-afhankelijke help .........................................................................................................223 12.11 Overal toegankelijk?...................................................................................................................224 12.12 Oefeningen ..................................................................................................................................224
APPENDIX A AFSPRAKEN M.B.T. NAAMGEVING ............................................ 225 APPENDIX B DE TOOLBAR ................................................................................ 229 APPENDIX C DE TOOLBOX ................................................................................ 231 TREFWOORDENREGISTER ................................................................................. 233
10 – Visual Basic 6.0 - beginners