对话框有:
1、inputBox
2、msgBox
3、通用通话框
通用通话框
部件:microsoft common dialog control 6.0
分为五种:
打开showopen
另存为 showsave
颜色 showcolor
字体 showfont
打印 showprinter
帮助 showhelp
注意: msgBox popupmenu showopen它们都有“挂起特征”,即对本过程以下的代码有静止作用,直到响应完毕。
来一个实验看一下三个不同。
添加一个计时器,在这三个弹出时的效果看一下,响应时,另一个过程的计时器是否仍然运行:
可以看到上面三种情况时,对于其它过程,只有PoppupMenu允许其它继续运行,而msgBox和commondialog却使其挂起,静止。
showopen的属性中:
filter过滤文件
filename 当点击相关文件后会返回文件名值(含路径),若点取消则返回空串。
多选
用flags标志来进行选择。
多选文件时,多个文件之间用的是空格进行分隔。这样就遇到一个问题,有些文件名中间也有空格,产生了干扰,怎么办呢?
还有一个cdlOFNExplore进行组合。这样组合选择后的结果就是,分隔符不是空格,而是空字符。
空字符: ASC码为0的字符。chr(0)
下面进行多个字符的选择,专门选择其中一个含有空格的文件名:
Private Sub Command1_Click() Dim s As String,a As Variant,i As Integer CommonDialog1.Flags = cdlOFNAllowMultiselect Or cdlOFNExplorer CommonDialog1.ShowOpen s = CommonDialog1.FileName a = Split(s,Chr(0)) For i = 0 To UBound(a) List1.AddItem a(i) Next i End Sub
另一个值得注意的是,showfont须设置flags,否则提示“没有安装字体,请从控制面板进行安装”
有两个可选择:
cdlCFBoth 屏幕和打印字体
cdlCFPrinterFonts 打印字体
cdlCFScreenFonts 屏幕字体
即:
commondialog1.flags=cdlCFprinterFonts ' 也可为cdlCFboth或cdlCFScreenFonts
commondialog1.showfont