【问题标题】:Visual Basic: Newbie questionsVisual Basic:新手问题
【发布时间】:2011-06-03 19:31:43
【问题描述】:

我开始学习视觉基础。到目前为止,它非常简单易用。我喜欢它!

无论如何,我想让应用程序更复杂一点。到目前为止,我做了非常愚蠢的事情。如果您能帮我解决这些问题,我将不胜感激:

  1. 如何打开一个新窗口(表单)?也许我单击主窗体上的一个按钮,然后弹出另一个窗体。如何在新表单运行时“停用”主表单? (如果我尝试单击主窗体,则会播放错误声音)

  2. 所以我的第二个表单有一个文本字段和一个“确定”按钮。如果我单击它,第二个表单将关闭再次激活主表单。我想将文本字段中的文本从第二种形式“传递”到第一种形式。我该怎么做?

谢谢,我很喜欢这个新的编程环境(以前没怎么用过 Visual Studio)

【问题讨论】:

    标签: vb.net winforms


    【解决方案1】:

    假设您使用的是 vb.net 和 winforms,这应该会让您走上正轨。

    单击父窗体时播放错误声音的原因是因为第二个窗体作为应用程序模型窗体打开,这会阻止应用程序在第二个窗体可见时从第二个窗体上移除焦点。

    Public Class Form1
    
            Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
                Dim newForm As New Form2
                newForm.ShowDialog(Me)
                TextBox1.Text = newForm.GetInfo
                newForm.Dispose()
                newForm = Nothing
            End Sub
    End Class
    
    
    Public Class Form2
    
        Public ReadOnly Property GetInfo As String
            Get
                Return TextBox1.Text
            End Get
        End Property
        Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
            Me.Hide()
        End Sub
    End Class
    

    【讨论】:

      【解决方案2】:
      1. 假设您的第二个表单 ID 是 frmOptions。您可以从按钮单击处理程序中调用 frmOptions.Show()。
      2. 以第二种形式公开一个公共属性,即 public string ChoosenAnswer { get;放; },在您关闭表单之前,将值分配给该公共属性,或者如果您想访问实际的表单控件本身,您应该仍然可以,只要将其设置为公共。在主窗体中,您只需执行 myChoice = frmOptions.ChoosenAnswer

      【讨论】:

        【解决方案3】:
        1. 在任务栏中你应该看到“项目”这个词点击它应该说“添加 Windows 窗体...”。然后会出现一个新窗口,单击“Windows 窗体”然后单击右下角的添加窗口,您现在有了另一个表单。

        【讨论】:

          【解决方案4】:

          你用的是什么vb?我理解你的问题,但我会给你一些示例代码以及如何使它工作的简单步骤。

          1. 打开 2 个表单 frmMainform 并将表单 2 设置为 frmSecondform。您可以在属性窗口中看到它>

          2. 然后将命令按钮和标签放在每个表单中。

          3. 是否命名由您决定。
          4. 转到mainform,然后双击按钮ok。 编码吧

            frmMainshow.hide
            frmSecondform.show
            
          5. 转到第二个表单,然后输入这个

            frmsecondform.hide
            frmmainform.show
            frmmainform.label1.text = "Pass"
            

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2011-02-25
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            相关资源
            最近更新 更多