我不是那么有经验,这是一个菜鸟问题。无论如何,我希望你会变得宽容。 我在我的vb.net应用程序中创建了一个小模块,每次都不会重写相同的代码。 所以我创建了module.vb
我把它放在里面,这段代码:
Module Save
Dim SaveFileDialog1 As New SaveFileDialog
Dim PictureBox1 As New PictureBox
Public idname As String
Public Sub Save()
SaveFileDialog1.FileName = idname
SaveFileDialog1.Filter = "(*.png)|*.png|(*.jpg)|*.jpg|(*.bmp)|*.bmp"
SaveFileDialog1.ShowDialog()
PictureBox1.Image.Save(SaveFileDialog1.FileName)
'End If #error while pasting :)
End Sub
End Module
在表单中,我以这种方式调用模块:
Private Sub ToolStripButton1_Click(sender As Object, e As EventArgs) Handles ToolStripSave.Click
Save() 'before it was Save.Save(), but only Save() give me the error "Save is a type and cannot be used as expression."
End Sub
我运行调试并且没有错误但是当我尝试保存图片时,我收到如下错误: “保存”是一种类型,不能用作表达式。
我犯错误的地方?
答案 0 :(得分:1)
首先,你不应该创建一个名为Save的类/模块,然后创建一个名为Save的子,特别是在使用名为Save
的方法时。错误与否,这很糟糕。
第二件事,我不确定那里是End If
是什么,因为没有If语句。要么你忘记写If something Then
,要么你误写了End If
。
有关SaveFileDialog
的详细信息,请查看here。
答案 1 :(得分:0)
你在函数调用中犯了一个错误Save.Save()
我们可以直接调用save()
方法,因为它在模块中被声明为public
,因此它具有全局范围
请对代码进行以下更正并再次执行:
Private Sub ToolStripButton1_Click(sender As Object, e As EventArgs) Handles ToolStripSave.Click
Save()
End Sub
注意:尽量避免使用关键字作为功能名称