关于vb的随机抽取

让此程序读取d:\name.txt中的名字,随机抽取姓名,最好能在打开程序的时候显示一个请输入密码的对话框,麻烦做好后将exe和工程文件发送到lszlsz.2008@16... 让此程序读取d:\name.txt中的名字,随机抽取姓名,最好能在打开程序的时候显示一个请输入密码的对话框,麻烦做好后将exe和工程文件发送到lszlsz.2008@ 163.com,并在重要的代码后添加上注释,我随后会追加财富的,谢谢.(图中名单文本框显示的是被抽中的人的姓名) 展开
 我来答
忠成静0O
2013-11-21 · TA获得超过1049个赞
知道小有建树答主
回答量:1114
采纳率:100%
帮助的人:905万
展开全部

请参考。


代码和EXE文件都在附件中。

登陆初始密码为123456

名单和名单密码保存路径设置为当前程序路径下,你如果需要存放在D:\名单.txt中,请自己修改。

刚刚你的提问我已经回答一次了,答案竟然被违规了,晕~~~~

更多追问追答
追问
有个缺陷,输入密码的时候密码就已经以密文显示了,直接点击登陆就行,没必要输入了,麻烦修改一下,再发一遍,谢谢
追答
点击一下修改按钮,你可以修改一下密码的。
信心安J
推荐于2017-10-04 · TA获得超过402个赞
知道小有建树答主
回答量:787
采纳率:0%
帮助的人:725万
展开全部
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


本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
甫温纶0gH698
2013-11-21 · TA获得超过363个赞
知道小有建树答主
回答量:354
采纳率:100%
帮助的人:326万
展开全部
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式