通过表单vb.net传递引用

时间:2014-12-26 18:30:21

标签: vb.net chat irc

是否有人对vb.net非常了解。我正在研究我的最后一个学期项目。我需要在表单之间传递对象。我在这里有两种形式的代码。 http://pastebin.com/xP1LdL3t

http://pastebin.com/fpuY98NT 要连接到irc服务器,我使用的是irc.Connect()函数。它完全适用于我的频道表单,只有在用户想要连接或表单加载时才会调用它。当我双击在线用户列表时,将打开一个私人消息表单。我无法发送irc.sendraw命令,该表单未调用irc.Connect()。它不应该以各种形式被调用。我想要的是在其他表单上使用频道的连接状态,以便irc.sendraw命令可以工作。 如果我没有正确解释,请告诉我。

2 个答案:

答案 0 :(得分:0)

目前尚不清楚“传递参考”是什么意思。表单之间有几种通信方式。以下是一些:

  1. 在一个表单中声明要由其他表单访问的公共变量或属性。如果这样做,请确保使用包含公共变量的表单的正确实例。如果在加载该表单之前引用其中一个变量,则最终会得到表单的两个实例,这些事情会让人感到困惑。

  2. 使用类似于(1)

  3. 的公共方法
  4. 在单独的模块中声明全局变量,以便由项目中的任何表单访问。 (有些人认为这种不礼貌。)

  5. 将表格中的参数传递给表格。

  6. 提出要以其他形式处理的事件。

答案 1 :(得分:0)

基本上, 如果你想通过表单1中的函数传递到表单2中的功能,你可以做这样的事情:

Public Class Form1

   Dim x As Integer = 2 

   Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
       Form2.fun(x)
       Form2.Show() ' it's optional 
   End Sub

End Class

并在表单2中,您只需获取值为ref:

Public Class Form2

   Dim y As Integer 'the variable to get the value of x

   Public Sub fun(ByRef x As Integer)
      y = x 
   End Sub

 End Class

希望它可以帮助你,这也是你想要的。