[求助]怎么在窗体间传递信息?
<P><BR>我想实现这样的目的:<BR>有两个窗体,一个是主窗体。上面有一个treeview,一个添加按钮,一个删除按钮。另一窗体作为窗体2,上面有textbox,button1,button2.<BR>(1):当我按下添加按钮时,出现另一个窗体,窗体2。<BR>(2):按下窗体2上的button1后,textbox上的字符作为主窗体treeview的一个node出现在treeview中,同时窗体2关闭。按下button2后,窗体2关闭,什么也不做。</P>
<P><BR>下面是我失败的程序,可以通过编译,但无法实现上述功能,还请懂的高手指点一二,我先谢谢了。</P>
<P><BR>[attach]7861[/attach]<BR></P>
<P>好像懂了,我先试试。</P> 试的怎么样了? 斑竹说的不错。[em17]<br>这个具体问题是不需要在窗体间传信息的。所谓传信息指的是send windows message。<br>这里的大概作法就像<FONT color=#990000><STRONG>璀璨星河</STRONG></FONT><FONT color=#000000>说的那样,第二个窗口作成Dialog,DoModal之后原来的Treeview读出Dialog里面的text。</FONT>
[align=right][color=#000066][此贴子已经被作者于2006-6-21 14:52:24编辑过][/color][/align]
<DIV class=quote><B>以下是引用<U>璀璨星河</U>在2006-6-21 10:22:59的发言:</B><BR>试的怎么样了?</DIV>
<P>如果做成无模式对话框。就是用<窗体对象>->show()调用的方法来调用。这个怎么做,能再具体点吗?</P> 就是你写的这样啊,遇到什么问题了吗? <DIV class=quote><B>以下是引用<U>璀璨星河</U>在2006-6-22 10:52:56的发言:</B><BR>就是你写的这样啊,遇到什么问题了吗?</DIV>
<P>就是在调用show()函数后(此函数在我的主窗体中调用的。),我在子窗体上点击确定,主窗体无法立即在树图中添加节点。<BR>要是能说明问题,或者这个程序可以简单化一点。在我在自窗体上点击确定后,在主窗体上的静态标签能改变标题。<BR>版主可以下我的压缩文件看看。就是这里卡住了。show()函数显示了子窗体后,子窗体上发生的事件怎么通知主窗体。<BR><BR><BR>楼上个各贴子我也看了。用MFC可以生成MFC框架下的基于对话框的程序,在MFC中,如果生成的是无模式对话框,用Create函数生成子窗体,子窗体通知主对话框的方法可以是发送消息。问题总结为一点就是在NET framework中,子窗体上的事件怎样通知主窗体?<BR></P> 和.NET framework没什么关系。和怎么发送消息也没关系,因为如你所说主窗口的静态标签已经可以改动。应该是你写tree的时候最后没有写SetRedraw(TRUE);之类的。没有看你的程序,不过你可以先检查一下,或者哪没写Invalidate()。 <DIV class=quote><B>以下是引用<U>myajax95</U>在2006-6-22 23:19:05的发言:</B><BR>和.NET framework没什么关系。和怎么发送消息也没关系,因为如你所说主窗口的静态标签已经可以改动。应该是你写tree的时候最后没有写SetRedraw(TRUE);之类的。没有看你的程序,不过你可以先检查一下,或者哪没写Invalidate()。</DIV>
<P>版主可能误解我的意思了。我还没有实现静态标签名称的更改,我的意思是如果静态标签可以更改的话,那么在tree上加个节点也是一样的道理。</P> <DIV class=quote><B>以下是引用<U>NET爱好者</U>在2006-6-22 20:46:07的发言:</B><BR><BR>
<P>子窗体上的事件怎样通知主窗体?<BR></P></DIV>
<P>[em04]这个我也正在研究,我试过两个窗体互相调用,可是失败了,我也很想知道,失败的原因就是子窗体调用父窗体时候不能初始化父窗体的对象。[em09]<BR></P> <DIV class=quote><B>以下是引用<U>璀璨星河</U>在2006-6-26 8:13:08的发言:</B><BR><BR>
<P>[em04]这个我也正在研究,我试过两个窗体互相调用,可是失败了,我也很想知道,失败的原因就是子窗体调用父窗体时候不能初始化父窗体的对象。[em09]<BR></P></DIV>
<P>是啊,我也为这个苦恼了很久,我们共同研究吧。</P> 好啊[em01] <DIV class=quote><B>以下是引用<U>璀璨星河</U>在2006-6-26 8:13:08的发言:</B><BR><BR>
<P>[em04]这个我也正在研究,我试过两个窗体互相调用,可是失败了,我也很想知道,失败的原因就是子窗体调用父窗体时候不能初始化父窗体的对象。[em09]<BR></P></DIV>
<p>我好像问过你这个事情,哈哈[em02] <DIV class=quote><B>以下是引用<U>CrazyWeed0907</U>在2006-6-28 10:12:53的发言:</B><BR><BR>
<P>我好像问过你这个事情,哈哈[em02]</P></DIV>
<p>[em04]当时就没有好的答复
页:
[1]
