首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将数据从表单%1发送到表单%2

将数据从表单%1发送到表单%2
EN

Stack Overflow用户
提问于 2017-08-03 00:24:47
回答 3查看 514关注 0票数 0

我做了两个变量:

代码语言:javascript
复制
Public a as Integer
Public b as Integer

我有一个文本字段,可以像这样插入两个值:"1 - 10“,所以我拆分了值,并将它们保存在这两个变量a和b中。

但是我需要这两个不同形式的值,但是我得到的都是0。

我还在form2中创建了Dim c as form1 = new form1

有什么问题吗?

EN

回答 3

Stack Overflow用户

发布于 2017-08-03 00:49:25

根据Form1和Form2之间的关系,您可以使用这种通信(这适用于父子关系):

表格2:

代码语言:javascript
复制
Public ParentFrm as Form1
Public a as Int16

表单1-在其运行的实例中

代码语言:javascript
复制
Public b as Int16
Dim NewInstanceOfForm2 as New Form2
NewInstanceOfForm2.ParentFrm = Me    ' this is to ensure you can talk back to correct instance of parent form
NewInstanceOfForm2.a = 12345
NewInstanceOfForm2.BackColor = colors.Pink
NewInstanceOfForm2.TextBox1.Text = "Hello World!!!"

由于我们在Form2中设置了ParentFrm,因此您可以以相同的方式返回并在Form1中设置内容:

代码语言:javascript
复制
ParentFrm.b = 789
ParentFrm.TextBox3 = "Hi there!!!"
ParentFrm.UpdateForm1FromDatabasePublicFunction()

兄弟姐妹可以通过共同的父代进行通信。但在所有情况下,您都需要了解表单的实例。请记住,您只能与对象(TextBox、按钮、DataGridView等)通信。和表单的公共变量。

票数 1
EN

Stack Overflow用户

发布于 2017-08-03 00:43:19

嗯,我不确定你到底想要什么,但这里有一些建议:

如果您的form1包含两个变量,如下所示:

代码语言:javascript
复制
Public a As Integer = 0
Public b As Integer = 0

如果您想从另一个表单中检索其中一个变量的值,比如从Form2中检索,那么您需要做的就是:

(将此代码放入函数或第二种形式的事件中(例如Form2)):

代码语言:javascript
复制
dim current_a As Integer = 0
current_a = Form1.a

dim current_b As Integer = 0
current_b = Form1.b

如果您在文本框中输入文本(例如:"1 -10“),但想要获取这两个值(在本例中为1和10),则只需通过创建循环来获取它们,以搜索这些值,如下所示:

代码语言:javascript
复制
dim textbox_str As String = ""
textbox_str = TextBox1.Text

(在本例中,TextBox1.Text将包含"1 - 10")

代码语言:javascript
复制
dim final_str1 As String = ""
dim final_str2 As String = ""

for each s_ As String In textbox_str
      If Not s_ = " " Then
          final_str1 = final_str1 & s_
      Else
          Exit For
      End If
Next

(在此之后,final_str1将包含"1") (现在通过执行以下操作提取第二个数字:)

代码语言:javascript
复制
final_str2 = textbox_str.Replace(final_str1 & " - ", "")

(现在,final_str2将包含"10") (因此您将从该文本中提取两个数字)

正如我所说的,我不完全知道你想要什么,但希望这对你有所帮助,让我知道这是不是你想要的!

票数 0
EN

Stack Overflow用户

发布于 2017-08-03 00:59:47

您可以创建一个模块,并在那里将变量定义为puclic,这样就可以从应用程序的任何位置访问它们。

右键单击该解决方案,然后依次添加新项和模块

并且在该模块中添加

公共a,b为整数

要拆分文本框输入并将其存储在这些变量中,请使用

代码语言:javascript
复制
Dim s as String
Dim sp() as String
s = TextBox1.Text
sp = s.Split("-")

这将分别在sp(0)和sp(1)上存储以'-‘分隔的文本框中的值。

然后您可以将它们存储到您的公共变量中。

代码语言:javascript
复制
a = sp(0)
b = sp(1)

然后用你需要的任何形式打电话给我。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/45466186

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档