K Kule Unregistered / Unconfirmed GUEST, unregistred user! 2001-02-08 #1 我的控件中生成一个新的窗体,当此新窗体关闭时我想接受返回值怎么解决? 可不可以定义自己的消息,当窗体关闭时发送到我的控件中,或是有什么别的办法?
F Fyx Unregistered / Unconfirmed GUEST, unregistred user! 2001-02-08 #2 定义个全局变量,在新的窗体的Close中写代码给全局变量赋值不行吗?
王 王江 Unregistered / Unconfirmed GUEST, unregistred user! 2001-02-08 #3 const my_message=wm_user+101; ...... procedure myclose(sender:tobject); begin sendmessage(handle,my_message,0,0); end; 在定义新窗体时 newform.onclose:=myclose; 在原窗体中截取这个消息 在pravite中加上 procedure mymessage(var msg:tmessage);message my_message; ....... procedure tform1.mymessage(var msg:tmessage); begin 在这里加上自己要处理的事情 end;
const my_message=wm_user+101; ...... procedure myclose(sender:tobject); begin sendmessage(handle,my_message,0,0); end; 在定义新窗体时 newform.onclose:=myclose; 在原窗体中截取这个消息 在pravite中加上 procedure mymessage(var msg:tmessage);message my_message; ....... procedure tform1.mymessage(var msg:tmessage); begin 在这里加上自己要处理的事情 end;
教 教父 Unregistered / Unconfirmed GUEST, unregistred user! 2001-02-08 #4 王江的方法应该可行,不过我还试过 :) to 王江:你的自我介绍写得太客气了吧 :)
X xueminliu Unregistered / Unconfirmed GUEST, unregistred user! 2001-02-08 #6 王江的方法是把消息发到窗体上,如果需要发到指定的地方,注意第一个参数: sendmessage(handle,my_message,0,0); handale是希望发送的目的地的句柄, 一般情况下实现你的目的都是把消息发到某个确定的窗体,因为我们可以很好的控制窗体类 的消息处理,就象王江的方法一样,只要在窗体类的声明处声明一个处理特定消息的函数即 可以
王江的方法是把消息发到窗体上,如果需要发到指定的地方,注意第一个参数: sendmessage(handle,my_message,0,0); handale是希望发送的目的地的句柄, 一般情况下实现你的目的都是把消息发到某个确定的窗体,因为我们可以很好的控制窗体类 的消息处理,就象王江的方法一样,只要在窗体类的声明处声明一个处理特定消息的函数即 可以
D djzxljb Unregistered / Unconfirmed GUEST, unregistred user! 2003-01-09 #9 但是这个目的窗口句柄如何获取,如果不知道的话,我看还是得用BroadcastWindowMessage,而且 还得注册消息RegisterWindowMessage