VB中关于随机数与Listbox的一道题,求解答。。。最好把完整的式子写出来~

程序运行初期,在窗体左边的列表框中生成10个由小到大排列的10到100之间的随机整数,单击窗体中“右移”按钮,则左边列表框的10个数移动到右边的列表框中,并由大到小排列,... 程序运行初期,在窗体左边的列表框中生成10个由小到大排列的10到100之间的随机整数,单击窗体中“右移”按钮,则左边列表框的10个数移动到右边的列表框中,并由大到小排列,此时“左移”按钮变为有效。单击“左移”按钮,右边列表框中的数又被移到左边的列表框中。单击“退出”按钮或按ESC键,可退出程序。
移动要求用additem和removeitem
以下是我写的。。但是右边的数不会从大到小排列。。而且还少了2个数,要怎么改
Private Sub Form_Load()
For i = 1 To 10
Randomize
se = Int(Rnd * 91 + 10)
List1.AddItem se
Next i
End Sub

Private Sub Command1_Click()
List1.RemoveItem se
For i = 1 To 1
List2.AddItem List1.List(i)
Next i
End Sub
展开
 我来答
jidong2107
2011-10-14 · TA获得超过867个赞
知道小有建树答主
回答量:724
采纳率:75%
帮助的人:202万
展开全部
Private Sub Command1_Click() '右移
For d = 1 To List1.ListCount
a = CByte(List1.List(0))
b = 0
For x = 0 To List1.ListCount - 1
If CByte(List1.List(x)) > a Then
a = CByte(List1.List(x))
b = x
End If
Next
List2.AddItem a
List1.RemoveItem (b)
Next
End Sub

Private Sub Form_Load()
Randomize
For i = 1 To 10
se = Int((91 * Rnd) + 10)
List1.AddItem se
Next i
End Sub

Private Sub Command2_Click() '左移
For i = 0 To List2.ListCount - 1
List1.AddItem List2.List(i)
Next i
List2.Clear
End Sub
最美乡村行
2011-10-14 · TA获得超过1136个赞
知道大有可为答主
回答量:1191
采纳率:0%
帮助的人:1614万
展开全部
这样你试一试

Private Sub Form_Load()
For i = 1 To 10
Randomize
se = Int(Rnd * 90 + 10)
List1.AddItem se
Next i
End Sub

Private Sub Command1_Click()
For i = 9 To 0 Step -1
List2.AddItem List1.List(i)
List1.RemoveItem i
Next i
End Sub
更多追问追答
追问
问一下~要怎么使“左移”按钮变为有效啊?我知道不可用就是设置其enabled=flase,然后怎么办?
追答
Private Sub Command1_Click()
For i = 9 To 0 Step -1
List2.AddItem List1.List(i)
List1.RemoveItem i
Next i

Command2.enabled=true

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

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式