关于vb的随机抽取
让此程序读取d:\name.txt中的名字,随机抽取姓名,最好能在打开程序的时候显示一个请输入密码的对话框,麻烦做好后将exe和工程文件发送到lszlsz.2008@16...
让此程序读取d:\name.txt中的名字,随机抽取姓名,最好能在打开程序的时候显示一个请输入密码的对话框,麻烦做好后将exe和工程文件发送到lszlsz.2008@ 163.com,并在重要的代码后添加上注释,我随后会追加财富的,谢谢.(图中名单文本框显示的是被抽中的人的姓名)
展开
3个回答
展开全部
Option Base 1
Private strAllName() As String
Private Sub ShowDATA()
Dim i As Integer
Dim strTemp2 As String
For i = 1 To UBound(strAllName)
strTemp2 = strTemp2 & strAllName(i) & vbCrLf
Next
txtNameList.Text = strTemp2
End Sub
Private Sub cmdExtract_Click()
Dim intTemp As Integer
Dim intTemp2 As Integer
Dim strTemp3 As String
intTemp = Int(Val(txtNum))
If intTemp <= 0 Then MsgBox "请输入抽取人数!", vbExclamation, "错误": Exit Sub
LOADDATA '装载数据
Randomize '初始化随机数生成器
For i = 1 To intTemp
Do
intTemp2 = Int(Rnd() * UBound(strAllName)) + 1 '生成随机数并判断是否有效
Loop Until Len(strAllName(intTemp2)) > 0
strTemp3 = strTemp3 & strAllName(intTemp2) & vbCrLf
strAllName(intTemp2) = ""
Next
txtNameList.Text = strTemp3
End Sub
Private Sub cmdWriteDATA_Click()
MsgBox "功能尚未开发"
End Sub
Private Sub Form_Load()
txtNameList.Locked = True '是否允许修改生成的名单
End Sub
Private Sub LOADDATA()
Dim strFileName As String
Dim strTemp As String
Dim intNameNum As Integer
'strFileName = "D:\name.txt" '实际操作时用,调试时注释
strFileName = App.Path & "\name.txt" '调试使用,实际操作时注释
Open strFileName For Input As #1 '注:供试验的人名是部分双百人物节选
Do While Not EOF(1)
Input #1, strTemp
If Len(strTemp) >= 1 Then
intNameNum = intNameNum + 1
ReDim Preserve strAllName(intNameNum) As String '动态定义数组
strAllName(intNameNum) = strTemp
End If
Loop
Close #1
End Sub
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询