Introduction

If you study your ten favorite Windows-based applications as models for your own programs, you’ll probably come up with a wish list: “I want one of those. That’s nice, but I want mine to be a little different. What if I combined one of these and one of those and then added something else?” But when you try to figure out how to implement these features with Visual Basic, you sometimes come up short.

Microsoft Visual Basic makes it easy to write 95 percent of your application, but when you reach that last 5 percent (down 5 percent from the last edition of this book), it seems to be fighting you every step of the way. There’s no way to do a seemingly simple task like modifying the Control menu. The language provides little support for sorting, searching, or parsing. You can use Visual Basic’s Collections, but writing your own is a different matter.

Let’s face it. Visual Basic is a language with limits. Eventually you’ll want to do something that Visual Basic won’t do, or you’ll want to do something fast that Visual Basic does slowly. You can understand why a language this easy has to make some compromises in flexibility and power—but you don’t want to accept it. There must be a way.