Most books are stored in the elastic cloud where traffic is expensive. For this reason, we have a limit on daily download.
1 Visual Basic for Electronics Engineering Applications Visual Basic for Electronics Engineering Applications A Crash Course To The World’s Premier RAD Tool. Developing R&D test systems in no time. 2 Visual Basic for Electronics Engineering Applications Copyright notice. Visual Basic for Electronics Engineering Applications The book is released as public domain. Reprint, sale or re-sale is prohibited. Copyright 1999 – 2005 Vincent Himpe. The author recognizes the copyrights, trademarks and registered trademarks of all products mentioned in this book. Initial edition 5-9-1999 Second revised edition 09-03-2002 E-mail: vincent_himpe@hotmail.com 3 Visual Basic for Electronics Engineering Applications Index table Copyright notice. . 2 Index table . 3 Visual Basic For the Research & Development LAB. 19 Part I : The Basics of Visual Basic . 19 Introduction. . 19 Conventions used in this manual . 22 Monotype Bold. 22 Chapter 1 : The Visual Basic Background . 23 1.1 Windows. 24 1.2 Object Oriented Programming. 25 1.3 What OOP does for you . 26 1.4 Overview of the definitions. 26 Chapter 2 : Exploring the Visual Basic environment . 29 2.1 Starting a Visual basic project . 29 2.2 The programming environment . 31 2.2.1 Using The Menu-bar. 31 2.2.2 Accessing functions with the Toolbar. 31 2.2.3 The Object Browser ( The Toolbox ). 32 2.2.4 The project navigator. 32 2.2.5 The properties navigator. 32 2.2.6 Form Layout Window . 32 2.2.7 Form Viewer. 33 2.2.8 Code Viewer. 34 2.2.9 The Help system. 35 Chapter 3 : The Basic Objects and Controls. 37 3.1 The Form. 37 3.2 The Controls. 38 3.3 The Standard controls inside Visual basic. 40 3.4 Common Controls . 41 3.5 Common Dialog Control . 42 3.6 Comm Control . 42 3.7 Menu’s. 43 3.8 Properties. 44 3.8.1 Name . 45 4 Visual Basic for Electronics Engineering Applications 3.8.2 Top, Left, Height, Width . 45 3.8.3 Backcolor, ForeColor, Textcolor. 45 3.8.4 Caption and Text. 46 3.8.5 Enabled and Visible. 46 3.8.6 Index. 46 3.8.7 Tabindex. 47 3.8.9 TooltipText. 47 Chapter 4: Events and Methods . 49 4.1 Tapping into Events. 49 4.1.1 Click (Most controls). 50 4.1.2 DblClick (Most controls ). 50 4.1.3 KeyPress (Most controls). 51 4.1.4 MouseMove (Most controls) . 51 4.1.5 Activate (Form) . 52 4.1.6 Deactivate (Form). 52 4.1.7 Load (Form) . 52 4.1.8 Unload (Form). 52 4.1.9 Change (Textbox). 53 4.2 Methods . 54 Chapter 5 : The Basic language itself. . 57 5.1 Variables. 59 5.1.1 Available Types in Visual Basic and how to declare them . 60 5.2 Arrays. 61 5.2.1 DIM. 62 5.2.2 ReDim. 63 5.2.3 Ubound. 64 5.2.4 Lbound. 65 5.2.5 Array. 66 5.3 Types. 69 5.4 Scope of Variables. 71 5.4.1 Public / Global. 72 5.4.2 Private. 72 5.4.3 Static. 73 5.5 Module level scope. 73 5.6 Subroutines and Functions. 74 5.6.1 Subroutines or Procedures. 75 5.6.2 Functions. 75 5.7 Scope of procedures. 76 5.8 Constants. 76 5.9 Numerical Operators . 79 5.10 Base conversion. 80 5 Visual Basic for Electronics Engineering Applications 5.11 Logical Operators. 81 5.12 Flow Control. 81 5.12.1 If then else. 82 5.12.2 If-then-else / elseif. 83 5.12.3 Select case. 84 5.12.4 Loop Constructions. 85 5.12.5 For Next. 85 5.12.6 While wend. 86 5.12.7 Do Until. 87 5.13 String manipulation Left$ - Right$ - Ltrim$ - Rtrim$. 88 5.13.1 Left$. 88 5.13.2 Right$. 88 5.13.3 Mid$. 88 5.13.4 Ltrim$ / Rtrim$ / Trim$. 89 5.13.5 Ucase$. 89 5.13.6 VAL and STR$. 90 5.13.7 LEN. 90 5.13.8 INSTR. 91 5.14 File Manipulation ( Open – Close – Print – Input ). 91 5.14.1 Basic structure to open a file. 92 15.4.2 Output mode . 93 5.14.3 Append mode . 93 5.14.4 Input mode. 94 5.14.5 Storing something in a file . 94 5.14.6 PRINT constructions ( file I/O ) . 95 5.14.6.1 Data list Style. 95 5.14.6.2 String style. 96 5.14.7 Reading from a file . 96 5.14.8 Determining file end. 97 5.14.9 File names. 97 Chapter 6 : Creating a user interface. 99 6.1 Creating The Form. 99 6.2 Arrays of Objects and Controls . 101 Chapter 7 : Attaching code to your form . 103 7.1 Attaching code to objects. 103 7.2 Let’s Attach some code . 104 Chapter 8 : Running and debugging a program . 107 8.1 Running a program. 107 8.1.1 Start , Break , Stop. 107 8.2 Debugging a program. 108 6 Visual Basic for Electronics Engineering Applications 8.3 Examining Variables . 109 8.4 Advanced Debugging : The Watch Window. 110 8.4.1 Window Elements . 110 8.4.2 Add Watch command . 111 8.4.3 Add watch dialog box. 112 8.4.4 Quick Watch command ( Shift F9 ). 113 8.4.5 Quick watch dialog box. 114 8.4.6 Edit Watch command . 115 8.4.7 Edit Watch Window . 115 8.5 Using Breakpoints. 116 8.6 the Debug Object. 117 Chapter 9 : Distributing a program. 119 9.1 The First steps …. 119 9.2 Specifying the Media. 122 Chapter 10 : Multi-module projects. . 125 10.1 Multiple Forms . 125 10.2 Modules . 127 10.3 Accessing items from other parts of the program. 127 10.4 Root structure analogy of a project . 129 Chapter 11 : A couple of case studies . 131 11.1 Case Study 1 : A small Text Editor . 133 11.1.1 Attaching Code. 136 Case Study 2 : A Calculator. 143 11.2.1 Designing the user interface. 143 11.2.2 Writing Code . 147 11.2.3 Attaching code to the user interface. 149 Part II . 157 The Advanced World of Visual Basic . 157 Introduction to Part II . 157 Chapter 12 : One step beyond. 159 12.1 Forms. 159 12.2.1 Load. 159 12.2.2 Unload. 160 12.2.3 Show. 162 12.2.4 Hide. 164 12.2.5 Modal / Modeless forms . 164 12.2.6 MDI forms . 166 12.2 Menu’s. 167 7 Visual Basic for Electronics Engineering Applications 12.2.1 Popup menu’s . 167 12.2.2 Adding images to menu’s . 169 12.3 Modifying menus from code . 170 12.3.1 Enabling and Disabling Menu Commands . 170 12.3.2 Displaying a Check Mark on a Menu Control. 171 12.3.3 Making Menu Controls Invisible. 172 12.3.4 Adding Menu Controls at Run Time . 173 12.4 Special Menu features . 173 12.4.1 WindowList . 174 12.4.2 Negotiating menu’s . 175 12.5 Option Selectors. 175 12.5.1 CheckBoxes. 176 12.5.2 OptionButtons or Radio Buttons . 176 12.5.3 Grouping Radio Buttons. 177 12.5.4 Listboxes. 177 12.6 Timer objects . 180 12.7 User entry objects. 182 12.7.1 Textboxes. 182 12.7.1.1 Locked and Enabled. 182 12.7.1.2 Keypress Event. 182 12.7.1 Combobox . 183 12.8 Printing. 185 12.9 Taking Advantage of the Windows95 Look . 186 Chapter 13 : Graphics. 189 13.1 Basic coordinate operations. 189 13.1.1 CurrentX, CurrentY. 190 13.2 Drawing setup. 190 13.2.1 Drawwidth. 190 13.2.2 Drawmode . 191 13.2.3 DrawStyle . 193 13.2.4 Fillcolour. 194 13.2.5 FillStyle. 195 13.3 Drawing primitives . 196 13.3.1 PSet. 196 13.3.2 Line. 197 13.3.3 Circle. 198 13.4 Saving and loading graphics. 200 13.4.1 Saving Graphics. 200 13.4.2 Loading Graphics. 202 13.5 Coordinate systems. 203 13.5.1 Scale. 203 13.5.2 Scalemode. 204 8 Visual Basic for Electronics Engineering Applications 13.5.3 ScaleHeight , Scalewidth. 206 13.5.4 ScaleLeft and ScaleTop. 207 Chapter 14: Communicating to the world around us. 209 14.1 SendKeys …: a simple way of communicating. 209 14.1.1 AppActivate. 213 14.1.2 Shell. 214 14.2 DDE : another means of inter-program communication . 215 14.2.1 LinkMode: . 215 14.2.2 Linktopic. 218 14.2.2.1 Destination Control. 219 14.2.2.2 Source Form. 220 14.2.3 LinkItem. 221 14.3 Serial IO : Talking to world beyond the port. 224 14.3.1 Inserting the object. 224 14.3.2 Portopen. 226 14.3.3 Handshaking. 227 14.3.4 Settings. 228 14.3.5 Outbuffersize , Inbuffersize. 229 14.3.6 OutbufferCount, Inbuffercount. 230 14.3.7 Parityreplace . 230 14.3.8 DTRenable. 231 14.3.9 Rthreshold. 231 14.3.10 OnComm Event . 232 14.3.11 Commevent. 232 14.4 Winsock : The world is not enough …. 234 14.4.1 TCP Basics. 235 14.4.2 UDP Basics. 235 14.4.3 RemoteHost . 235 14.4.4 Protocol. 236 14.4.5 State. 236 14.4.6 Accept. 237 14.4.7 GetData. 238 14.4.8 Connectionrequest. 239 14.4.9 DataArrival. 240 Appendix II : Some more case studies . 241 Doodle : A Graphics program. 241 Miniterm :A simple terminal . 241 AlphaServer : A Telnet Server application. 241 LoanCalc : Using Excel from your program . 241 Case Study 3 : Doodle A graphics program. 243 Case Study 4 : The dataterminal. 251 9 Visual Basic for Electronics Engineering Applications Case Study 5 : AlphaServe : A Telnet server . 259 Case Study 6 : LoanCalc : Using Excel in your applications . 261 Conclusion. 263 Visual Basic For the Research & Development LAB. 267 Part III . 267 Master Programming with Visual Basic. 267 Introduction . 267 Chapter 15: Digging into Windows. . 269 15.1 DLL’s. 269 15.2 Accessing DLL routines. 271 15.3 On Passing parameters to procedures and functions . 273 15.4 API programming. 275 15.4.1 A simple API example. 276 Chapter 16 : ActiveX Control Creation. 281 16.1 Creating an ActiveX Object. 282 16.2 Adding property’s and events. 288 16.3 What the wizard came up with … . 298 15.6 A closer look at the final code. . 300 Chapter 17 : Building better programs. . 305 17.1 The KISS Way. 306 17.2 Atomic Programming . 310 17.3 Naming objects. 312 17.3 Error handling. 313 17.3.1 The On Error Goto clause. 314 17.3.2 The Err object. 318 17.3.3 Resuming execution after handling the error . 320 17.3.4 Trappable errors. 322 17.3.5 Syntax Errors ( errors against the Basic syntax ). 323 17.3.7 Runtime errors . 323 17.3.8 Flawed Programming logic errors. . 324 17.3.9 File handling errors. 325 Chapter 18 : The Windows registry. 327 18.1 Digging into the registry. 327 18.2 Data Mining in the registry. 329 18.2.1 GetSetting. 329 18.2.2 SaveSetting. 330 18.2.3 DeleteSetting. 331 18.3 Make use of the registry . 331