用vb编写了这个随机抽取人名的抽奖系统,但会出现重复,怎么样做到不重复并添加一个记录显示已抽到的人名

求代码咯新手... 求代码咯 新手 展开
 我来答
小罗哥110
2013-01-22 · TA获得超过154个赞
知道小有建树答主
回答量:451
采纳率:80%
帮助的人:170万
展开全部
我给你个简单的例子、你看下
Option Explicit
Dim jm(35) As String
Dim i, cs As Integer

Private Sub Command1_Click()
Timer1.Enabled = True
cs = cs + 1
Label1.Visible = True
Command1.Enabled = False
Command2.Enabled = True
End Sub

Private Sub Command3_Click()
End
End Sub

Private Sub Command2_Click()
Timer1.Enabled = False
jm(i) = jm(32 - cs)
Command1.Enabled = True
Command2.Enabled = False
StatusBar1.Panels.Item(3) = 32 - cs
End Sub

Private Sub Form_Load()
jm(0) = "李珊珊等《西游记》"
jm(1) = "刘泽玉 小王佳《知足》"
jm(2) = "小王佳 王敏《一个像夏天,一个像秋天》"
jm(3) = "李铭 李兵《你是我心内的一首歌》"
jm(4) = "刘泽玉 孙皓晨《因为爱情》"
jm(5) = "赵京城 《寻找》"
jm(6) = "王振远 高磊《寂寞沙洲冷》"
jm(7) = "李宗瑶《小星星》"
jm(8) = "逯鹏 张志远《最美的太阳》"
jm(9) = "李彤彤 葛文芮《BABY DON'T CRY》"
jm(10) = "王敏 杨雪《夜夜夜夜》"
jm(11) = "张月明 李晓雨 大王佳《过火》"
jm(12) = "葛文芮 孙皓晨《Timeless》"
jm(13) = "叶小雨 郭津铭《未完成的歌》"
jm(14) = "逯鹏 孙杰《父亲》"
jm(15) = "王昭政《那些年》"
jm(16) = "叶小雨 高磊《奔跑》"
jm(17) = "顾庆杰 韩曦《我们都一样》"
jm(18) = "张遵策 郭津铭《心跳》"
jm(19) = "张遵策《空城》"
jm(20) = "逯鹏 李宗瑶《江南》"
jm(21) = "郅睿 王敏《会呼吸的痛》"
jm(22) = "韩绍飞 吕典杰《水手》"
jm(23) = "郅睿 张东剑《后会无期》"
jm(24) = "大王佳 韩曦《小酒窝》"
jm(25) = "赵文青 时静璐《遗失的美好》"
jm(26) = "甄岳《没有什么不同》"
jm(27) = "吴巧 李晓慧《我的歌声里》"
jm(28) = "李瑶 李姗姗《最炫民族风》"
jm(29) = "大王佳 侯家慧《星空》"
jm(30) = "三组全体《大笑江湖》"
jm(31) = "大王佳 张锋《肩上蝶》"
End Sub

Private Sub Timer1_Timer()
Randomize
i = Int(Rnd * (32 - cs))
Label1.Caption = jm(i)
If 32 - cs <= 0 Then
Timer1.Enabled = False
Command1.Enabled = False
Command2.Enabled = False
MsgBox "节目已完成,感谢你使用本程序!"
Command3.Value = True
End If
End Sub
更多追问追答
追问
我已经写了抽奖程序了怎么加入不重复代码与显示已经抽过奖的LABEL 你这个有显示LABEL 但少个抽奖过程中的循环label或textbox  还有为什么又三个按钮?
追答
我给你的是我做过的例子,让你看下我是用的什么方法让数据不重复的。我告诉你的是方法,学习就是要多思考嘛,呵呵……如果你看的不是很明白,我可以把你的那个给改了。不过,我觉得,还是自己动手比较好,呵呵
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
crazy0qwer
2013-01-22 · TA获得超过3300个赞
知道大有可为答主
回答量:4020
采纳率:71%
帮助的人:1313万
展开全部
其实我很想帮你的,但是。。。。你至少要写点东西出来吧?要完全的代码不太好吧?
更多追问追答
追问
我随机抽取的已经做好了 就不知道怎么样写做到不重复 还想旁边弄个LABEL什么的来记录显示已经抽到过的
追答
dim Str as string,N 

for i = 1 to 10 ‘假设抽取十个人。
n=rnd() ‘自己写完整

if instr(str,n)=0 then '在 str里面查找本次抽到的数,如果找不到

str=str & " " & n ' 把本次抽取的数加入

else
i=i-1 ’重新抽取

end if

next
label1.caption =str
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式