VB6如何将字符串值从form2返回到Form1
在我的项目中,有两种形式: 首先,我将其命名为frmSettings,我将使用文本框在INI文件中保存值。 第二种形式我把它命名为frmSelectFolder,它包含了DirListBox和2个命令按钮 如上图所示,在设置表单中,我有8个文本框和8个命令按钮来浏览文件夹路径,该路径将从frmSelectFolder中选择VB6如何将字符串值从form2返回到Form1,vb6,Vb6,在我的项目中,有两种形式: 首先,我将其命名为frmSettings,我将使用文本框在INI文件中保存值。 第二种形式我把它命名为frmSelectFolder,它包含了DirListBox和2个命令按钮 如上图所示,在设置表单中,我有8个文本框和8个命令按钮来浏览文件夹路径,该路径将从frmSelectFolder中选择 如何对所有文本框使用frmSelectFolder,而无需在每个命令按钮上复制此表单以返回目录框控制值?以下是辅助frmSelectFolder表单的一些示例代码 Opti
如何对所有文本框使用frmSelectFolder,而无需在每个命令按钮上复制此表单以返回目录框控制值?以下是辅助
frmSelectFolder
表单的一些示例代码
Option Explicit
Private m_bConfirm As Boolean
Public Function Init(sPath As String) As Boolean
Dir1.Path = sPath
Show vbModal
If m_bConfirm Then
sPath = Dir1.Path
'--- success
Init = True
End If
Unload Me
End Function
Private Sub cmdOk_Click()
If LenB(Dir1.Path) = 0 Then
MsgBox "Please select a path!", vbExclamation
Exit Sub
End If
m_bConfirm = True
Visible = False
End Sub
Private Sub cmdCancel_Click()
Visible = False
End Sub
Private Sub Form_QueryUnload(Cancel As Integer, UnloadMode As Integer)
If UnloadMode <> vbFormCode Then
Cancel = 1
Visible = False
End If
End Sub
这里有一个完整的示例项目链接供您研究:每次在“设置”中按下按钮时,调用显示SelectFolder表单并返回文件夹的函数。这个返回的文件夹被分配给文本框。你似乎是个初学者,所以我不得不问你为什么要使用VB6?在这一点上它已经过时了。你最好从VB.Net或更好的C开始。亲爱的Brian。我可以调用显示SelectFolder form的函数这没问题,我这里的意思是,当我按下按钮1时,它显示SelectFolder form,然后它将字符串值返回到text1,当我按下按钮时,它显示相同的表单SelectForm,它将阀门返回到text2,依此类推。那么你可以在这方面帮助我吗?亲爱的Slugsie,我使用VB6是因为我们在这里使用的项目有大量的源代码,这一次我们满意地使用了VB6亲爱的Mohamed,如果在VB6中有大量的源代码,那么其中肯定实现了类似的交互——主窗体调用辅助窗体并传递输入参数,成功后在输出参数中接收结果。这是基础编程101在每一种编程语言的IMO。我可以写一个小片段作为回答,如果你需要帮助如何可以在10-20行代码中完成。亲爱的wqw,这正是我需要的,我感谢你的好意。
Option Explicit
Private Sub cmdStartupPath_Click()
Dim sPath As String
Dim oFrmSelector As New frmSelectFolder
sPath = txtStartupPath.Text
If oFrmSelector.Init(sPath) Then
txtStartupPath.Text = sPath
txtStartupPath.SetFocus
End If
End Sub
Private Sub cmdDownloadPath_Click()
Dim sPath As String
Dim oFrmSelector As New frmSelectFolder
sPath = txtDownloadPath.Text
If oFrmSelector.Init(sPath) Then
txtDownloadPath.Text = sPath
txtDownloadPath.SetFocus
End If
End Sub