当涉及到课程,潜艇和那种东西时,我是一个非常棒的人。我正在VB 2012中制作一个程序,它将在你的USB密钥上创建一个便携版的Minecraft。
这是一些代码(“port_cr”):
'Get %appdata%
Dim appdata As String = Environ("USERPROFILE") & "\AppData\roaming\.minecraft"
'Get the path
port_mc_getPath.ShowDialog()
Dim save_mc As String = port_mc_getPath.SelectedPath
'Copy everything
My.Computer.FileSystem.CreateDirectory(save_mc & "\Data")
My.Computer.FileSystem.CreateDirectory(save_mc & "\Bin")
My.Computer.FileSystem.CreateDirectory(save_mc & "\Data\.minecraft")
My.Computer.FileSystem.CopyDirectory(appdata, save_mc & "\Data\.minecraft", True)
'OPEN ANOTHER FORM TO CHOOSE THE LAUNCHER YOU WANT TO DOWNLOAD
chooseLauncher.Show()
“chooseLauncher”是一个带有一些按钮的表单,它们将适当的文件下载到“port_cr”表单中指定的路径,这是我无法弄清楚如何做的。如果有人能告诉我如何做到这一点,我真的很感激
答案 0 :(得分:1)
在chooseLauncher
表单上创建公共属性,并在显示表单之前将它们设置为值。例如,如果chooseLauncher
表单具有名为SaveMc
的公共字符串属性,则可以执行此操作:
chooseLauncher.SaveMc = save_mc
chooseLauncher.Show()
答案 1 :(得分:1)
表单只是花哨类型的类,它们具有与之关联的一些可视行为/呈现。在OOP中,您可以像对待任何类(自定义类或本机类)一样对待它们。
让我们在.NET框架中使用一个简单的本机类,并从那里抽象出来。 如何将数据传递给DataTable类?
'create a new instance of that class
Dim dt as New DataTable
'pass in the name of the table
dt.Name = "AnyName"
我可以将该信息传递给datatable类,因为它已经有一个可以存储Name信息的属性。
现在在创建自己的类时考虑一下。假设您有一个名为ChooseLauncher的表单。让我们给它一些可以在内部使用并在外部添加的属性。也许是一个名为FilePath的属性
Class ChooseLauncher : Inherits Form
Public FilePath As String
End Class
现在,当您创建ChooseLauncher类时。您所要做的就是从创建它的任何地方设置publiclly available属性。
Dim myForm As New ChooseLauncher
myForm.FilePath = "NewValue"
myForm.Show()