关于点击pictureBox时,得到里面图片的文件名。
棋牌游戏中,用pictureBox调取图片显示牌面,当点击某一图片时,如何读取这张图片所对应的数值?比如说我在桌面排列了5个pictureBox,文件夹有01.bmp-1...
棋牌游戏中,用pictureBox调取图片显示牌面,当点击某一图片时,如何读取这张图片所对应的数值?
比如说我在桌面排列了5个pictureBox,文件夹有01.bmp-10.bmp十张图片作为牌,程序按一定的规则调取其中五张图片到5个pictureBox。我需要在点击某个pictureBox时,能知道是这个pictureBox里是哪张图片。在调图时保存路径的方法不行,因为我的实际游戏不只5个pictureBox,而且还需要经常相互交换里面的图片。
在类似“空档接龙”中,有很多PictureBox,我是用两个PictureBox的Picture属性交换来实现图片的移动的,而不是实际移动PictureBox。这样做的话我实在无法在加载图片时保存路径,保存出来的也只是内存地址,请继续指点。 展开
比如说我在桌面排列了5个pictureBox,文件夹有01.bmp-10.bmp十张图片作为牌,程序按一定的规则调取其中五张图片到5个pictureBox。我需要在点击某个pictureBox时,能知道是这个pictureBox里是哪张图片。在调图时保存路径的方法不行,因为我的实际游戏不只5个pictureBox,而且还需要经常相互交换里面的图片。
在类似“空档接龙”中,有很多PictureBox,我是用两个PictureBox的Picture属性交换来实现图片的移动的,而不是实际移动PictureBox。这样做的话我实在无法在加载图片时保存路径,保存出来的也只是内存地址,请继续指点。 展开
1个回答
展开全部
'加载图片后,pictureBox控件与文件路径就没有关联了,只能在加载图片时保存路径,
'自定义函数同时加载图片和保存路径,假设这些pictureBox不是控件数组
Dim Names As New Collection '定义一个集合
Sub myLoadPicture(pic As PictureBox, FileName As String)
pic.Picture = LoadPicture(FileName) '加载图片
On Error Resume Next
Names.Remove pic.Name
Names.Add FileName, pic.Name '保存路径
End Sub
Sub SwapPicture(pic1 As PictureBox, pic2 As PictureBox)
Set SP = pic1.Picture
pic1.Picture = pic2.Picture
pic2.Picture = SP '交换PictureBox的图片
On Error Resume Next
a = Names(pic1.Name)
b = Names(pic2.Name)
Names.Remove pic1.Name
Names.Remove pic2.Name
Names.Add b, pic1.Name
Names.Add a, pic2.Name '交换图片路径
End Sub
'调取图片和获取路径
myLoadPicture Picture1, "01.bmp" '在Picture1中显示图片"01.bmp"
Names(Picture1.Name) '获取Picture1中的图片路径
SwapPicture Picture1, Picture2 '交换Picture1和Picture2的图片
'自定义函数同时加载图片和保存路径,假设这些pictureBox不是控件数组
Dim Names As New Collection '定义一个集合
Sub myLoadPicture(pic As PictureBox, FileName As String)
pic.Picture = LoadPicture(FileName) '加载图片
On Error Resume Next
Names.Remove pic.Name
Names.Add FileName, pic.Name '保存路径
End Sub
Sub SwapPicture(pic1 As PictureBox, pic2 As PictureBox)
Set SP = pic1.Picture
pic1.Picture = pic2.Picture
pic2.Picture = SP '交换PictureBox的图片
On Error Resume Next
a = Names(pic1.Name)
b = Names(pic2.Name)
Names.Remove pic1.Name
Names.Remove pic2.Name
Names.Add b, pic1.Name
Names.Add a, pic2.Name '交换图片路径
End Sub
'调取图片和获取路径
myLoadPicture Picture1, "01.bmp" '在Picture1中显示图片"01.bmp"
Names(Picture1.Name) '获取Picture1中的图片路径
SwapPicture Picture1, Picture2 '交换Picture1和Picture2的图片
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询