购买
下载掌阅APP,畅读海量书库
立即打开
畅读海量书库
扫码下载掌阅APP

2.4 通用对话框

通用对话框就是经常使用的、在打开文件和保存文件时候弹出的对话框。但是在工具栏里没有该对话框,需要手动添加。选择Microsoft Common Dialog Control 6.0,单击确定即可,如图2-28所示。

图2-28 添加通用对话框

在菜单小节中,我们设置了文件的“打开”和“保存”菜单。本节将介绍如何使用通用对话框打开和保存文件。要在窗体中添加通用对话框的部件。

首先,保存文件。在这里,我们保存使用PictureBox控件绘制的翼型结果。在窗体编辑区,单击“文件”里的“保存”菜单,进入“保存”菜单的代码编辑工作。增加如下代码:

  Private Sub mSave_Click()
  Me.CommonDialog.InitDir = App.Path
  Me.CommonDialog.Filter = "*.bmp|*.bmp"
  Me.CommonDialog.ShowSave
  If Me.CommonDialog.FileName <> "" Then
    TFileName = Me.CommonDialog.FileName
    Me.CommonDialog.FileName = ""
    SavePicture Me.WorkPic.Image, TFileName
    MsgBox "文件保存完毕!", vbOKOnly, "谢谢使用"
  End If
End Sub

保存的图片文件如图2-29所示。

图2-29 保存图片结果

(a)正视图;(b)俯视图

通用对话框除了有打开文件、保存文件的功能外,还包含了颜色对话框。通用对话框用的颜色采用RGB颜色,RGB分别代表红(red)、绿(green)和蓝(blue)。通常,可指定red、green、blue的数值,再通过调用RGB(red,green,blue)函数来实现颜色的定义。其中,red、green、blue的数值范围都是[0,255],正常的RGB颜色的有效范围为0~16 777 215(&HFFFFFF&)。用十六进制数按照下述语法来指定颜色:&HBBGGRR&,其中,BB指定蓝色的值,GG指定绿色的值,RR指定红色的值。要从一个RGB颜色中调取出需要的red、green、blue数值,就需要进行与运算。在Fun模块中添加如下代码:

  Public Function RedFromRGB(ByVal rgb As Long)As Integer
 RedFromRGB = & HFF& And rgb
End Function
Public Function GreenFromRGB(ByVal rgb As Long)As Integer
 GreenFromRGB = (& HFF00& And rgb)\ 256
End Function
Public Function BlueFromRGB(ByVal rgb As Long)As Integer
 BlueFromRGB = (& HFF0000 And rgb)\ 65536
End Function

现在进行MSChart控件下曲线颜色的更换。为简化代码,考虑仅有一条曲线的情况,也就是只有一个Series,选择曲线调用过程SeriesSelected调出颜色对话框,添加如下代码以更换曲线颜色:

  Private Sub MyChart_SeriesSelected(Series As Integer, MouseFlags As Integer, Cancel As Integer)
 Dim Red As Integer
 Dim Green As Integer
 Dim Blue As Integer
 Me.CommonDialog.ShowColor
 Red = Fun.RedFromRGB(Me.CommonDialog.Color)
 Green = Fun.GreenFromRGB(Me.CommonDialog.Color)
 Blue = Fun.BlueFromRGB(Me.CommonDialog.Color)

 With Me.MyChart.Plot.SeriesCollection(1).DataPoints(-1).Brush.FillColor
  .Red = Red
  .Green = Green
  .Blue = Blue
 End With
End Sub

其运行结果如图2-30和图2-31所示。

图2-30 更换颜色操作显示

图2-31 更换颜色运行结果 DYgtMSbkeeUvK/v3lUQiKj5MlTyGn/ABNMm2Vf5J5usX/ZC7Usu9ltpDzebYXP8g

点击中间区域
呼出菜单
上一章
目录
下一章
×

打开