一个送分题...对象变量或 With 块变量未设置,大家来研究研究...

bizshow 2006-12-08 09:41:32
代码如下,位于模块中,提示"对象变量或 With 块变量未设置"错误
Dim picToolBarHot As PictureBox
With picToolBarHot
.Picture = LoadPicture(App.Path & "\rescore\" & filename & ".bmp")
End With
后来看了相关帖子,说是仅仅定义了,没有实例化
将程序改成
Dim picToolBarHot As PictureBox
Set picToolBarHot = New PictureBox '不知道这样可以实例化对象否

With picToolBarHot
.Picture = LoadPicture(App.Path & "\rescore\" & filename & ".bmp")
End With
又提示无效的NEW关键字
我查了VB的对象浏览器,PictureBox是位于VB对象中的,
后来又改成
Dim picToolBarHot As VB.PictureBox
Set picToolBarHot = New VB.PictureBox
我在输入VB后出现的下拉菜单里并没有PictureBox,只有一个Global
后面的代码照样还是不能执行.
请问我到底要怎样做,才能在模块中使用PictureBox载入一幅图片执行操作
下面是这个过程的完整代码.
Public Sub initImage(img As ImageList, filename As String)
Dim picToolBarHot As VB.PictureBox
Set picToolBarHot = New VB.Global
Dim pictemp As VB.PictureBox
Set pictemp = New VB.Global
With picToolBarHot
.Picture = LoadPicture(App.Path & "\rescore\" & filename & ".bmp")
End With
For i = 0 To 6
pictemp.Cls
pictemp.PaintPicture picToolBarHot.Picture, 0, 0, 24 * 15, 24 * 15, i * 24 * 15, 0, 24 * 15, 24 * 15
img.ListImages.Add , , pictemp.Image
Next
End Sub
...全文
115 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
Winters_lee 2006-12-09
  • 打赏
  • 举报
回复
对,楼上正确。楼主写的代码中都没有实际出现的Picture出现(就是实际的需要操作的控件),如果你没有可操作的控件,那你要Load图片到什么地方呢?
bizshow 2006-12-09
  • 打赏
  • 举报
回复
可是这段代码我是放在模块里的,难道每次调用的时候,都要在窗体里有个PictureBox才可以调用额...那岂不是我每个窗体都要画个PictureBox...?

还有其他解决的办法吗?
VB.Net 2006-12-08
  • 打赏
  • 举报
回复
建议将picToolBarHot 实例化到某个具体的picturebox
Set picToolBarHot = Form1.Picture1

7,763

社区成员

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

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