我使用相同MDIChild表单(frmChart)的几个实例(myForm1,myForm2等等)来显示不同的MSCharts:
frmMain:
Private Sub Open()
dim myForm1 as frmChart
myForm1.Show
dim myForm2 as frmChart
myForm2.Show
End sub
当我尝试保存一个打开的实例的MSChart时会出现问题,因为我调用了一个frmChart.SaveChart()函数来调整图片框的大小,然后调用Form_Load()事件,因此会打开一个新的额外的frmChart。
frmChart:
Public Sub SaveChart()
picGrapgh.Height = chChart.Height
picGrapgh.Width = chChart.Width
picGraph.Autoredraw = True
picGraph.Picture = picGraph.Image
SavePicture picGraph.picture, FileName
End Sub
当我调用该子时,它会调用frmChart的Form_Load()。这只发生在我使用表单实例(myForm1)时。一旦我使用了frmChart的PictureBox控件的任何属性,它就会启动Form_Load事件。我怎么能阻止它呢?
非常感谢您提前。
此致 鲁本
答案 0 :(得分:2)
有两个问题:
dim myForm1 as frmChart
如果/当创建一个(实例化)时,这只是声明myForm1
将属于frmChart
类型。要创建frmChart
的实际实例:
dim myForm1 as New frmChart
由于myFormN
现在是frmChart
的实例,您可以直接在/通过实例变量调用这些过程:
myForm1.SaveChart