我想实现这样一个功能,请高手指教!

yaozheng 2003-09-22 09:44:25
就是要在窗体上动态生成20个image控件,然后在imagelist中保存有50张图片,我现在想随机从imagelist中抽取10张图片,然后放进这20个动态生成的image控件中,每张图片放两个image控件,也是要随机放,请问这个功能如何做?

您不需要给出完整的代码,您只需能告诉我动态生成这20个image控件的代码,以及能稍微指点我一下随机抽取图片然后随机放进控件的思路。

谢谢大家!

...全文
62 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
dreamreality 2003-09-23
  • 打赏
  • 举报
回复
Dim WithEvents Img As Image

Private Sub Form_Load()
Set Img = Controls.Add("VB.Image", "img")
With Img
.Visible = True
.Width = 2000
.Top = 0
.Left = 0
.Picture = LoadPicture("e:\照片 026.jpg")
End With
End Sub
这样可以无中生有
golden24kcn 2003-09-23
  • 打赏
  • 举报
回复
我假设你已经有img(0)
for i = 1 to 20
load img(i)
set img(i).parent = frmMain '设置它的所有者,不设置默认和img(0)一样
img(i).left = img(i-1).left + img(i).width + 100 '间隔100缇,如何不设置那么它们的位置是重叠的,TOP也要设置
img(i).visable = true '这个要设置的,不然默认是False,你就看不到它们了
next

crazybeatcode 2003-09-23
  • 打赏
  • 举报
回复
必须用WITHEVENTS定义,否则IMAGE控件不响应事件
fanhongbin 2003-09-23
  • 打赏
  • 举报
回复
我的意見於樓上等同
jary12581 2003-09-22
  • 打赏
  • 举报
回复
代码基本上没有区别。
yaozheng 2003-09-22
  • 打赏
  • 举报
回复
不用.net呢,因为我的开发环境是vb6
jary12581 2003-09-22
  • 打赏
  • 举报
回复
用.net编码:
1、动态生成20个image控件
……
dim i as integer
for i=0 to 19
dim image_X as new image()
with image_X
.top=i*100 +44 '设定控件在窗体上的排放位置
.left=20
……
end with
me.controls.add(image_x) '这个语句非常重要,他把生成的image_x控件添加到当前的窗体中
next
……
2、动态抽取图片
用随机述:
dim ran1 as new random()
dim ran2 as new random()
dim i as integer
dim j as integer
i=ran1.next(1,10) ‘在1到10之间产生一个随机数
j=rand2.next(1,20) ‘在1到20之间产生一个随机数
for k=0 to i-1
……
next
for kk=0 to j-1
……
next
3、如有不明白之处请回复。

7,789

社区成员

发帖
与我相关
我的任务
社区描述
VB 基础类
社区管理员
  • VB基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧