| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 2596 人关注过本帖
标题:[求助]如何在两个窗体间传递数据?
只看楼主 加入收藏
cobby
Rank: 1
等 级:新手上路
威 望:1
帖 子:565
专家分:0
注 册:2007-7-11
收藏
 问题点数:0 回复次数:9 
[求助]如何在两个窗体间传递数据?
我在第一个窗体form1中打开第二个窗体form2,用代码
form2 frm2=new form2();
frm2.show();
this.enabled=false;

第一个窗体变为不可用。
现在,我希望当关闭form2时,重新使form1可用,应该怎么办呢?另外,如何把form2中文本框的字符串读入到form1的文本框中呢?
搜索更多相关主题的帖子: 窗体 数据 form false 
2007-10-10 11:02
crazymk
Rank: 1
等 级:新手上路
威 望:1
帖 子:343
专家分:0
注 册:2007-8-30
收藏
得分:0 
有很多以前的帖子
妳可以在frm2中做一個返回值
或者做一個全局的公有結構體來存儲frm2要返回的信息
有很多方法。。。。

[此贴子已经被作者于2007-10-10 11:10:45编辑过]


すばらしいコードを書き出すのは楽しい事です
2007-10-10 11:09
cobby
Rank: 1
等 级:新手上路
威 望:1
帖 子:565
专家分:0
注 册:2007-7-11
收藏
得分:0 
谢谢楼上帮忙。请问“全局的公有結構體”应该定义在什么地方?怎么定义和使用?能否给个简单的小例子?

以前的贴好像找不到喔。。。请再帮下忙了!

努力成为菜鸟!
2007-10-10 15:08
cobby
Rank: 1
等 级:新手上路
威 望:1
帖 子:565
专家分:0
注 册:2007-7-11
收藏
得分:0 
搞定了呵,我用一个公有函数解决了,谢谢了!

努力成为菜鸟!
2007-10-10 15:17
andey
Rank: 2
等 级:新手上路
威 望:4
帖 子:938
专家分:0
注 册:2007-7-18
收藏
得分:0 
其实..在不同的窗体里传递参数的时候..
用static的变量应该是基础的思路!!

msdn == 葵花宝典!!!
QQ:122768959
2007-10-10 15:43
wzerolai
Rank: 1
等 级:新手上路
帖 子:52
专家分:0
注 册:2007-5-14
收藏
得分:0 
请问楼主用的是什么函数搞定的?
2007-10-10 22:32
flyp1985
Rank: 1
等 级:新手上路
帖 子:26
专家分:0
注 册:2007-9-3
收藏
得分:0 
都是高手我听的迷糊

坚持编程道路,努力当好一名好的优秀的程序员 是我的梦想!!!
2007-10-11 00:33
cobby
Rank: 1
等 级:新手上路
威 望:1
帖 子:565
专家分:0
注 册:2007-7-11
收藏
得分:0 
我知道的方法有两种,供参考。

一、用上面我所谓的函数

1、在form1中写函数
public void setdata(string str)
{
this.textbox1.text=str;
}

2、产生第二个窗体
form2 f=new form2();
f.owner=this; //这句很关键
f.show();

3、从第二个窗体返回参数
((form1)this.owner).setdata(this.textbox1.text);

二、直接从第二个窗体对第一个窗体的控件进行操作
1、首先将form1中的textbox1的modifiers属性设置为public

2、产生第二个窗体
form2 f=new form2();
f.owner=this; //这句很关键
f.show();

3、直接从form2操作form1中的文本框
((form1)this.owner).textbox1.text=this.textbox1.text;



听说正夫的方法是自己写个类,太深奥呵,俺还不懂

努力成为菜鸟!
2007-10-11 08:53
andey
Rank: 2
等 级:新手上路
威 望:4
帖 子:938
专家分:0
注 册:2007-7-18
收藏
得分:0 
嗯...同意楼上的..
思路不错!!!

msdn == 葵花宝典!!!
QQ:122768959
2007-10-15 14:22
guoxhvip
Rank: 8Rank: 8
来 自:聖西羅南看臺
等 级:贵宾
威 望:44
帖 子:4052
专家分:135
注 册:2006-10-8
收藏
得分:0 
form2 frm2=new form2();的时候这样写form2 frm2=new form2(this);不是把Form1传过去了吗 那那些属性你在那边想怎么调用就怎么调用 反过来想在Form1中得到Form2中文本框的值那只有写个public方法了 这个方法给它一个参数 里面就写Form1文本框.Text = 参数 在Form2已经得到Form1的对象了调用这个方法 并把Form2中文本框的值传递过去

[此贴子已经被作者于2007-10-16 3:36:48编辑过]



愛生活 && 愛編程
2007-10-16 03:34
快速回复:[求助]如何在两个窗体间传递数据?
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.019363 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved