[VB.NET]openFileDialog控件的问题:以下两种代码哪个更优化一些?

VB.NET源码-156个实用实例哦…… <script type="text/javascript"> </script> <script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"> </script>
openFileDialog控件的问题:以下两种代码哪个更优化一些?
我在msdn中看到的示例:

Private Sub button1_Click(sender As Object, e As System.EventArgs)
Dim myStream As Stream
Dim openFileDialog1 As New OpenFileDialog()

openFileDialog1.InitialDirectory = "c:/ "
openFileDialog1.Filter = "txt files (*.txt)|*.txt|All files (*.*)|*.* "
openFileDialog1.FilterIndex = 2
openFileDialog1.RestoreDirectory = True

If openFileDialog1.ShowDialog() = DialogResult.OK Then
myStream = openFileDialog1.OpenFile()
If Not (myStream Is Nothing) Then
'' Insert code to read the stream here.
myStream.Close()
End If
End If
End Sub

其中Dim myStream As Stream其实要改为io.Stream
我不明白这些繁琐的定义有什么做为,因为我认为openfiledialog本身就是一个控件,为什么不能直接对它进行操作而要另外引用一个对象变量来进行操作?后来我自己改了一下:

Private Sub openF_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles openF.Click

OpenFileDialog1.InitialDirectory = "c: "
OpenFileDialog1.FileName = " "
OpenFileDialog1.Filter = "图片文件 (*.BMP)| "
OpenFileDialog1.ShowDialog()
End Sub


我想效果是一样的,但这个代码还有一个问题就是:当前对话框列表会显示所有类型的文件,如何做到,让对话框里只显示扩展名为BMP的文件?
__________________________________________________________________________
OpenFileDialog1.Filter = "图片文件(BMP)|*.bmp " ''设置打开文件类型过滤器
__________________________________________________________________________
你的Filter 设置错误了,必须要有前后分隔符号

例如:
OpenFileDialog1.Filter = "jpg文件 (*.jpg)|*.jpg;*.jpeg|bmp文件 (*.bmp)|*.bmp|gif文件 (*.gif)|*.gif|支持的三种图形 (*.gif)|*.gif;*.bmp;*.jpeg;*.jpg "

前面的是说明,|后边的才是具体类型。
可以写多个,就是下拉框的效果了
__________________________________________________________________________
一样的
只是第一个示例比第二个全面点
__________________________________________________________________________
你的Filter书写有误
openFileDialog1.Filter = "图片文件(BMP)(*.bmp)|*.bmp "

第一个是在打开对话框时进行了一些初使化,比如
openFileDialog1.InitialDirectory = "c:/ "
默认打开的是c盘

你不显示对它进行初始化,它会用缺省值对它进行初使化的
__________________________________________________________________________
你的代码有区别么?
__________________________________________________________________________
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值