浏览文件夹中的图片(用VB实现)

原创 2002年12月17日 08:57:00

                                            浏览文件夹中的图片(用VB实现)
     首先要新建一个工程,在Form1中添加dirlistbox控件,drivelistbox控件,filelistbox控件,combobox控件,textbox控件,vscrollbar控件和一个command1控件
然后在代码框中输入以下代码:

Option Explicit

private Declare Function FindFirstFile Lib "kernel32" Alias "FindFirstFileA" (ByVal lpFileName As String, lpFindFileData As WIN32_FIND_DATA) As Long
private Declare Function FindClose Lib "kernel32" (ByVal hFindFile As Long) As Long
private Declare Function FindNextFile Lib "kernel32" Alias "FindNextFileA" (ByVal hFindFile As Long, lpFindFileData As WIN32_FIND_DATA) As Long
private Const MAX_PATH = 260
private Type FILETIME
        dwLowDateTime As Long
        dwHighDateTime As Long
End Type
private Type WIN32_FIND_DATA
        dwFileAttributes As Long
        ftCreationTime As FILETIME
        ftLastAccessTime As FILETIME
        ftLastWriteTime As FILETIME
        nFileSizeHigh As Long
        nFileSizeLow As Long
        dwReserved0 As Long
        dwReserved1 As Long
        cFileName As String * MAX_PATH
        cAlternate As String * 14
End Type

Dim Pic As Object
Private Sub Command1_Click()
Dim obj As Object
Dim pcname As String
Dim i As Long, j As Long, counter As Long
Dim wfd As WIN32_FIND_DATA
Dim source As String, piname As String
Dim hfile As Long
Dim nfile As Long
Dim filename() As String
Dim x As Long, length1 As Long, width1 As Long
counter = 0
Set Pic = Form1.Controls.Add("VB.PictureBox", "test")
Pic.Visible = True
If Right(Dir1.Path, 1) <> "/" Then
  source = Dir1.Path & "/" & Text1.Text
Else
  source = Dir1.Path & Text1.Text
End If
hfile = FindFirstFile(source, wfd)
If hfile = -1 Then
 MsgBox "没有找到文件"
End If
counter = counter + 1
Do
nfile = FindNextFile(hfile, wfd)
If nfile <> 0 Then
counter = counter + 1
End If
Loop Until nfile = 0
ReDim filename(counter) As String
hfile = FindFirstFile(source, wfd)
filename(0) = wfd.cFileName
For i = 1 To counter
 nfile = FindNextFile(hfile, wfd)
 filename(i) = wfd.cFileName
Next i
If Right(Dir1.Path, 1) <> "/" Then
source = Dir1.Path & "/"
Else
source = Dir1.Path
End If
Call FindClose(hfile)

For i = 0 To (counter / 4)
For j = 0 To 3
piname = "picture" & j + 1 + i * 4
Set obj = Form1.Controls.Add("VB.Image", piname)
obj.Width = 1500
obj.Height = 1500
obj.Stretch = True
Set obj.Container = Pic
obj.Left = j * obj.Width
obj.Top = i * obj.Height
If (j + 1 + i * 4) > counter Then
GoTo line
End If
obj.Picture = LoadPicture(source & (filename(j + 1 + i * 4)))
obj.Visible = True
Next j
Next i
line:
width1 = j * obj.Width
length1 = i * obj.Height
Pic.Width = 4 * obj.Width
Pic.Height = length1
Pic.Left = Dir1.Left + Dir1.Width
Pic.Top = 0
width1 = 4 * obj.Width
length1 = i * obj.Height
VScroll1.Min = 0
VScroll1.Max = 32767
End Sub
Private Sub Dir1_Change()
File1.filename = Dir1.Path
End Sub
Private Sub Drive1_Change()
Dir1.Path = Drive1.Drive
End Sub
Private Sub Form_Load()
Combo1.Text = "*.jpg"
Combo1.AddItem "*.bmp"
Combo1.AddItem "*.gif"
VScroll1.LargeChange = 200
VScroll1.SmallChange = 50
Text1.Text = Combo1.Text
End Sub
Private Sub VScroll1_Change()
Pic.Top = 0 - VScroll1.Value
End Sub
该程序在VB6.0+WINME环境下调试通过。

欢迎广大读者和本人讨论。我的电子邮件是:ywchen2000@etang.com

VB实现选取文件夹路径

在VB中直接选取文件路径直接使用控件就可以实现 选取文件夹路径可以采用下述办法。   添加模块文件直接进行调用。模块内容代码 '--------------------------------...
  • ROVAST
  • ROVAST
  • 2014年04月22日 18:24
  • 3145

【MFC-7】VS2010编程之浏览文件夹

一、开发环境 1、VS2010; 2、C++ / MFC; 二、MFC浏览文件夹编程 1、创建基于对话框的MFC程序,命名为“BrowseDialog”; 2、添加控件如下图所示,并修...
  • qingyang8513
  • qingyang8513
  • 2015年07月27日 18:48
  • 953

MFC总结(10) ---- MFC中CFileDialog 实现浏览文件和浏览目录功能

CFileDialog文件选择对话框的使用:首先构造一个对象并提供相应的参数,构造函数原型如下: CFileDialog::CFileDialog( BOOL bOpenFileDialog, L...
  • oBuYiSeng
  • oBuYiSeng
  • 2015年11月12日 10:29
  • 2132

MFC实现打开、保存文件对话框和浏览文件夹对话框

一、打开、保存对话框 文件对话框属于通用对话框范畴(另外还有颜色,查找,查找替换,字体,打印等对话框)。 借助MFC现成的类CFileDialog你可以轻易操作文件对话框。 CFileDialog ...
  • linshaolie
  • linshaolie
  • 2014年05月02日 11:40
  • 2749

vb中 打开文件夹浏览框的方法总结

众所周知,在vb中如果是打开某一个文件的话,非常简单,使用CommonDialog组件即可轻松完成,但是他只能选择文件,之后或许选取的文件路径,而如果想要浏览文件夹,就没这么方便了。 这里介绍3个办...
  • angel20082008
  • angel20082008
  • 2017年05月09日 17:35
  • 434

自己写的一款基于移动端的图片浏览器插件

/** * 基于移动端的图片浏览器 * @author:Arvon * @time:2017-06-02 * @type {{}} */ var currIndex = 0; var Im...
  • wen942467928
  • wen942467928
  • 2017年06月02日 17:36
  • 399

java swing实现简单的图片浏览器

重新打开书,看到了一个图片浏览器的例子,编码运行,重新理解代码,直接贴代码 package awt; import java.awt.event.ActionEvent; import ja...
  • aaoxue
  • aaoxue
  • 2013年01月20日 21:27
  • 4039

在VB中如何判断文件、文件夹是否存在和生成文件夹

一、在VB编程中,经常需要判断一个文件和文件夹是否存在,以便执行相应的操作,这可以用下列语句进行判断。  Dir ([PathName],[Attributes as VbFileAttri...
  • angel20082008
  • angel20082008
  • 2015年04月24日 19:39
  • 5136

Android 图片浏览功能 图片放大缩小

Android 图片浏览功能  图片放大缩小    使用 photoview 双击或双指缩放的ImageView  使用多点触控和双击。 滚动,以平滑滚动甩。 ...
  • u011164565
  • u011164565
  • 2016年08月10日 13:56
  • 2520

组合模式实例之文件浏览

代码: package MyElement; public abstract class AbstractFile { public abstract void add(AbstractFile ...
  • wangiijing
  • wangiijing
  • 2016年05月31日 10:36
  • 639
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:浏览文件夹中的图片(用VB实现)
举报原因:
原因补充:

(最多只允许输入30个字)