Private Sub StyleNo_AfterUpdate()
Dim strFile As String
Dim strpath As String
'P:\Sketch\Photo' 老师这个是图片路径,应该怎么改呢,图片放在photo文件夹中
strFile = Dir(strpath, vbDirectory Or vbHidden Or vbNormal Or vbReadOnly)
'搜索当前目录
While strFile <> ""
If (GetAttr(strpath + strFile) And vbDirectory) <> vbDirectory Then
If strFile Like '" &
Me.StyleNo* & "' Then ,
Me.StyleNo 是图片名的前部份,如:
R12345A0
Me.imgPicture1.Picture = strFile ,显示图片
Me.ImagePath1 =“P:\Sketch\Photo\" & strFile '取图片的完整路径
End If
End If
strFile = Dir '查找下一个目标
Wend
End Sub
改为(注意黄*色部分):
Private Sub StyleNo_AfterUpdate()
Dim strFile As String
Dim strpath As String
'P:\Sketch\Photo' 老师这个是图片路径,应该怎么改呢,图片放在photo文件夹中
strpath="P:\Sketch\Photo"
strFile = Dir(strpath, vbDirectory Or vbHidden Or vbNormal Or vbReadOnly)
'搜索当前目录
While strFile <> ""
If (GetAttr(strpath + strFile) And vbDirectory) <> vbDirectory Then
If strFile Like "*" & Me.StyleNo & "*" Then 'Me.StyleNo 是图片名的前部份,如:R12345A0
Me.imgPicture1.Picture = strFile ,显示图片
Me.ImagePath1 =strFile '取图片的完整路径
End If
End If
strFile = Dir '查找下一个目标
Wend
End Sub
Private Sub StyleNo_AfterUpdate()
Dim strFile As String
Dim strpath As String
strpath =“P:\Sketch\Photo”
strFile = Dir(strpath, vbDirectory Or vbHidden Or vbNormal Or vbReadOnly)
'搜索当前目录
While strFile <> ""
If (GetAttr(strpath + strFile) And vbDirectory) <> vbDirectory Then
If strFile Like Me.StyleNo & "*.jpg“ Then ' Me.StyleNo 是图片名的前部份,如:R12345A0 [.jpg]加进去主要是为了区分非图片文件
Me.imgPicture1.Picture = strpath & “\” & strFile '显示图片
Me.ImagePath1 =strpath & “\” & strFile '取图片的完整路径
End If
End If
strFile = Dir '查找下一个目标
Wend
End Sub
运行有问题,提示文件未找到,,调试的结果!
少了一个斜扛
把GetAttr(strpath + strFile) 改成 GetAttr(strpath & “\” & strFile) 试试
可以了大师,不过如果图片多的话,运行得很慢!有没有方法提速的呢?
这个过程是对文件夹内所有文件进行循环一遍的,而且还要加载图片到控件中,加上文件数量可观自然会很慢的!
是不是就是为了好看呢?
不是为了好看,是很有用处,就是图片太多,就很慢!
总记录:17篇 页次:1/1 9 1 :