Programming Home Projects With Microsoft Small Basic

 Table of Contents

1. Writing Programs Using Microsoft Small Basic

Preview 1-1
Introducing Home Projects With Microsoft Small Basic 1-2
Requirements for Home Projects With Microsoft Small Basic 1-3
Introducing Small Basic 1-4
Starting Small Basic 1-5
Running a Small Basic Program 1-7
Chapter Review 1-10

2. Overview of Small Basic Programming

Review and Preview 2-1
Objects, Properties, Methods and Events 2-2
TextWindow Object 2-4
GraphicsWindow Object 2-6
Controls Object 2-10
Program Object 2-14
Text Object 2-15
Mouse Object 2-16
ImageList Object 2-16
Shapes Object 2-17
File Object 2-19
Timer Object 2-20
Sound Object 2-21
The Small Basic Language 2-23
Variables 2-24
Small Basic Data Types 2-25
Arrays 2-26
Intellisense Feature 2-27
Small Basic Statements and Expressions 2-28
Small Basic Arithmetic Operators 2-29
Comparison and Logical Operators 2-30
Concatenation Operator 2-31
Small Basic Methods 2-32
String Methods 2-33
Math Methods 2-35
Random Numbers 2-37
Graphics Methods 2-38
Shapes Objects 2-42
Small Basic Decisions – If Statements 2-44
Small Basic Looping 2-47
Small Basic Counting 2-51
Small Basic Subroutines 2-53
Chapter Review 2-55

3. Debugging a Small Basic Project

Review and Preview 4-1

4. Dual-Mode Stopwatch Project

Review and Preview 4-1
Project Design Considerations 4-2
Dual-Mode Stopwatch Project Preview 4-3
Project Window Design 4-7
Stopwatch Window Design 4-8
Window Design – Time Displays 4-9
Window Design – Add Buttons 4-11
Code Design – Initial to Running State 4-12
Code Design – Update Display 4-14
Code Design – Running to Stopped State 4-17
Code Design – Stopped State 4-19
Dual-Mode Stopwatch Project Code Listing 4-23
Dual-Mode Stopwatch Project Review 4-26
Dual-Mode Stopwatch Project Enhancements 4-27

5. Consumer Loan Assistant Project

Review and Preview 5-1
Consumer Loan Assistant Project Preview 5-2
Loan Assistant Window Design 5-7
Window Design – Input Text Boxes 5-8
Window Design – Loan Analysis 5-10
Window Design – Add Buttons 5-11
Code Design – Switching Modes 5-12
Code Design – Computing Monthly Payment 5-16
Code Design – Computing Number of Payments 5-22
Code Design – Loan Analysis 5-26
Code Design – New Loan Analysis 5-32
Improving a Small Basic Project 5-34
Code Design – Zero Interest 5-35
ShowMessage Method 5-37
Code Design – Input Validation 5-38
Consumer Loan Assistant Project Code Listing 5-45
Consumer Loan Assistant Project Review 5-51
Consumer Loan Assistant Project Enhancements 5-52

6. Flash Card Math Quiz Project

Review and Preview 6-1
Flash Card Math Quiz Project Preview 6-2
Flash Card Math Window Design 6-10
Window Design – Scoring and Problem Display 6-12
Window Design – Choosing Problem Types 6-15
Window Design – Factor Selection 6-17
Window Design – Timer Options 6-19
Window Design – Add Buttons 6-21
Code Design – Start Practice 6-22
Code Design – Problem Generation 6-25
Code Design – Obtaining Answer 6-32
Code Design – Choosing Problem Type 6-35
Code Design – Changing Factor 6-39
Code Design – Timing Options 6-43
Code Design – Presenting Results 6-56
Flash Card Math Quiz Project Code Listing 6-58
Flash Card Math Quiz Project Review 6-68
Flash Card Math Quiz Project Enhancements 6-69

7. Multiple Choice Exam Project

Review and Preview 7-1
Multiple Choice Exam Project Preview 7-2
Multiple Choice Exam Window Design 7-15
Window Design – Adding Shapes 7-17
Window Design – Adding Buttons 7-21
Code Design – Exam File Format 7-23
Code Design – Generating Exam Files 7-24
Code Design – Opening an Exam File 7-29
Code Design – Reading an Exam File 7-32
Window Design – Selecting Options 7-38
Code Design – Start Exam 7-44
Code Design – Question Generation 7-47
Code Design – Checking Multiple Choice Answers 7-52
Code Design – Checking Type In Answers 7-59
Code Design – Checking Spelling 7-65
Code Design – Presenting Results 7-71
Multiple Choice Exam Project Code Listing 7-74
Multiple Choice Exam Project Review 7-85
Multiple Choice Exam Project Enhancements 7-86

8. Weight Monitor Project

Review and Preview 8-1
Weight Monitor Project Preview 8-2
Weight Monitor Window Design 8-6
Window Design – Date Display 8-7
Window Design – Weight Entry 8-9
Window Design – Add Buttons 8-10
Code Design – Specifying a Weight File 8-11
Code Design – Opening Weight File 8-12
Code Design – Weight Plot 8-16
Code Design – Date Arithmetic 8-19
Code Design – Drawing the Plot 8-22
Code Design – Grid Lines 8-28
Code Design – Plot Labels 8-32
Code Design – Weight Plot Trend 8-38
Code Design – Entering Weights 8-45
Code Design – Saving Weight Files 8-51
Code Design – Using a New Weight File 8-55
Weight Monitor Project Code Listing 8-58
Weight Monitor Project Review 8-66
Weight Monitor Project Enhancements 8-67

9. Home Inventory Manager Project

Review and Preview 9-1
Home Inventory Manager Project Preview 9-2
Home Inventory Manager Window Design 9-9
Window Design – Inventory Items 9-11
Window Design – Photo Selection 9-12
Window Design – Adding Buttons 9-14
Code Design – Inventory File Input 9-16
Code Design – Viewing Inventory Item 9-19
Code Design – Navigation 9-22
Code Design – Inventory File Output 9-24
Code Design – Loading Photo 9-25
Code Design – New Inventory Item 9-28
Code Design – Deleting Inventory Items 9-34
Code Design – Editing Inventory Items 9-36
Form Design – Inventory Item Search 9-41
Code Design – Inventory Item Search 9-44
Home Inventory Manager Project Code Listing 9-46
Home Inventory Manager Project Review 9-55
Home Inventory Manager Project Enhancements 9-56

10. Snowball Toss Game Project

Review and Preview 10-1
Snowball Toss Game Project Preview 10-2
Snowball Toss Game Window Design 10-7
Window Design – Headings 10-8
Window Design – Scoring and Game Area 10-11
Window Design – Adding Buttons 10-13
Code Design – Choosing Options 10-15
Configuration Files 10-20
Code Design – Configuration Files 10-22
Animation with Small Basic 10-24
Drawing Images with IconEdit 10-26
Code Design – Start/Stop Game 10-29
Code Design – Moving the Tossers 10-34
Code Design – Throwing Snowballs 10-38
Code Design – Collision Detection 10-42
Code Design – Zombie Snowmen 10-51
Code Design – Playing Sounds 10-59
A Possible Problem 10-64
Code Design – One Player Game 10-65
Snowball Toss Game Project Code Listing 10-77
Snowball Toss Game Project Review 10-88
Snowball Toss Game Project Enhancements 10-89

Appendix I. Small Basic Colors

Appendix II. Sharing a Small Basic Program​