您的位置首页百科问答

用VB6.0编写电脑抽奖程序

用VB6.0编写电脑抽奖程序

的有关信息介绍如下:

用VB6.0编写电脑抽奖程序

年来在娱乐节目之中常常见到利用电脑来抽奖,笔者对其发生了兴趣遂自己动手用VB编了一个小程序来实现电脑抽奖的小功能,其原理如下:

  主要利用VB中的Rnd函数,来实现随机查找和打乱排序的功能,从而实现随机抽奖的目的。Rnd函数的语法结构是Rnd[(number)],可选的number参数是 single或任何有效的数值表达式。Rnd函数返回小于1但大于或等于0的值。number 的值决定了 Rnd 生成随机数的方式。为了生成某个范围内的随机整数,可使用以下公式:

  Int((upperbound - lowerbound + 1) × Rnd + lowerbound)

  这里,upperbound 是随机数范围的上限,而 lowerbound 则是随机数范围的下限。

另外,程序中还使用了INI文件,Windows INI文件,可解释为Windows初始化文件。它是一种专门用来保存应用程序初始化信息和运行环境信息的文本文件。ini文件是一种文本文件,它可以通过Notepad等文本编辑器进行编辑。ini文件具有特定的格式。一个INI文件是由若干个段(section)组成的,每个段中包含若干关键字(key)及相应的值(value)。创建应用程序自己的INI文件,通过INI文件保存应用程序的一些运行环境信息,然后在程序中读取INI文件中的设置信息并据以处理。一旦程序的运行环境需要变更,则可以通过直接修改INI文件,或在程序中提供专门的界面间接地修改INI文件来保证程序的可用性。

源程序及注释如下:

  '窗体源程序

  Option Explicit

  Dim m_strNameArray() As MyName

  Dim m_bIsStart As Boolean

  Dim m_nNameIndex As Integer

  Dim MAX_INDEX As Integer

  Dim m_nSelectNum As Integer

'被选定数

  Dim nScrollStep As Integer

  Dim nScrollWidth As Integer

  Dim bScrollState As Boolean

  Dim nEnableSecond As Integer

  Dim m_strTitle As String

Dim m_strAppTitle As String

  Dim m_strScrollTitleLeft As String

  Dim m_strScrollTitleRight As String

  Private Sub Command_Start_Stop_Click()

  If m_bIsStart = True Then

  '按停止钮

m_bIsStart = False

  Command_Start_Stop.Caption =

  “开始"

  Label_FlashName.Visible = True

  Timer_FlashName.Enabled = True

  Timer_ScrollName.Enabled = False

  Label_FlashName =

m_strNameArray(m_nNameIndex).strName + “中奖了!"

  m_strNameArray(m_nNameIndex).bIsSelect = True

  m_nSelectNum = m_nSelectNum + 1

  Dim Temp As MyName

  Temp =

  m_strNameArray(MAX_INDEX)

  m_str Name Array(MAX-INDEX) = m_strNameArray(m_nNameIndex)

  m_strNameArray(m_nNameIndex) =

  Temp

  MAX_INDEX = MAX_INDEX - 1

  If MAX_INDEX = 0 Then

  MsgBox “非常感谢您使用本软件"

  End If

 Else '按开始钮

  m_bIsStart = True

  Command_Start_Stop.Caption = “停止"

  Command_Start_Stop.Enabled = False

  Timer_ScrollName.Enabled = True

  Timer_FlashName.Enabled = False

  Label_FlashName.Caption = “"

  End If

  End Sub

  Private Sub Form_Load()

  Form_Bouns.ScaleMode = 3

  m_nNameIndex = 0

  m_bIsStart = False

  Timer_ScrollName.Enabled = True

  Timer_ScrollTitle.Enabled = True

  Label_FlashName.Visible = False

  Label_ScrollName.Caption = “"

  nEnableSecond = 0

  '定义起始秒数

  ReDimNameArray

  '获得文本中的名字和打乱名字顺序

  nScrollStep = 5 '设定滚动字的步长

  nScrollWidth = Label_Congruation.Left

  '设定title的移动宽度

  bScrollState = False

  '设定缺省的开始滚动方向为向左

  m_nSelectNum = 0

  '初始化被选定数为0

  Init

  '初始化本程序的界面

  End Sub