VB Tutor VB2022 VB2019 VB6 VB Sample Code About Us
Lucky Draw Program

Lucky Draw Program

A fun game created using Visual Basic 6 and VB.NET with random prize selection


This is a program that simulates a lucky draw game. This program consists of a 3x3 matrix, which means there are 9 command buttons in a grid. The command buttons are created as controls in an array, and they are differentiated by their indices. One of the buttons contains a prize; when you click on it, it displays the word "prize" on the caption. If you don't strike the prize, the word "The Prize is here!" will appear on the command button that contains the prize.

We use a randomize process to create the chance events. Random integers from 1 to 9 can be created using the statement n=Int(Rnd*9)+1. Int is a function that converts numbers to integers and Rnd is a method that generates random numbers between 0 and 1. When the user clicks a command button, a random number between 0 and 9 is generated. If this number corresponds to the index of the command button, it will show the word "Prize" on the clicked command button, otherwise, it shows the words "The Prize is here!" on the command button with an index corresponding to the generated number.

Interactive Demo

Try the Lucky Draw game right here in your browser! Click on any box to see if you've won the prize.

1
2
3
4
5
6
7
8
9

Program Interface

Lucky Draw Interface

The Lucky Draw program interface with a 3x3 grid of buttons

Implementation Code

Below you'll find the implementation for both Visual Basic 6 and VB.NET.

Visual Basic 6 Code

Private Sub Command1_Click(Index As Integer)
    Dim n As Integer
    For n = 0 To 8
        Command1(n).Caption = ""
    Next
    n = Int(Rnd * 9)
    If Index = n Then
        Command1(n).Caption = "Prize"
    Else
        Command1(n).Caption = "The Prize is here!"
    End If
End Sub

This VB6 code uses a control array of buttons. When any button is clicked:

  1. All button captions are cleared
  2. A random number between 0 and 8 is generated
  3. If the clicked button's index matches the random number, it shows "Prize"
  4. Otherwise, the button with the random index shows "The Prize is here!"

Key Programming Concepts

Random Number Generation

Using Rnd in VB6 and Random class in VB.NET to create unpredictable outcomes

Control Arrays

Managing multiple controls with the same event handler (VB6) or shared handler (VB.NET)

Event Handling

Responding to user actions (button clicks) to trigger game logic

State Management

Resetting the game state between plays for a fresh experience

How to Implement in Your Project

VB6 Implementation Steps

  1. Create a new Standard EXE project
  2. Add a 3x3 grid of CommandButtons to your form
  3. Set all buttons to have the same name (Command1) to create a control array
  4. Copy the provided VB6 code into the button click event handler
  5. Run the project and test the game

VB.NET Implementation Steps

  1. Create a new Windows Forms App (.NET Framework)
  2. Add 9 buttons named Button1 to Button9 in a 3x3 grid
  3. Set the Click event for all buttons to the same handler
  4. Copy the provided VB.NET code into the event handler
  5. Run the application and enjoy the game