郁闷的问题,知道的进来,不知道的也进来看看? ( 积分: 50 )

  • 主题发起人 主题发起人 匪匪
  • 开始时间 开始时间

匪匪

Unregistered / Unconfirmed
GUEST, unregistred user!
一、怎么由窗口的handle取得窗口对象,我有多个窗口,我取得他们的handle后,怎么取得这个窗口的对象。我好让这个窗口显示出来,并且给这个窗口控件的内容赋值。所以,我现在只想知道,如果通过窗口handle,取得窗口的对象。
二、这个问题更郁闷
我有一些动态生成的按钮,现在有且只有一个事件,他按收消息,而且这个消息是动态的发给这些按钮的,我怎么做,才能让这些消息对应到相应的一个按钮上。比如:消息的功能就是一次改变一下按钮的Caption[:(]
 
一、怎么由窗口的handle取得窗口对象,我有多个窗口,我取得他们的handle后,怎么取得这个窗口的对象。我好让这个窗口显示出来,并且给这个窗口控件的内容赋值。所以,我现在只想知道,如果通过窗口handle,取得窗口的对象。
二、这个问题更郁闷
我有一些动态生成的按钮,现在有且只有一个事件,他按收消息,而且这个消息是动态的发给这些按钮的,我怎么做,才能让这些消息对应到相应的一个按钮上。比如:消息的功能就是一次改变一下按钮的Caption[:(]
 
1.有Handle 后可以对其进行SendMessage,如窗口的显示,好象是恢复吧,查一下MSDN.
2.创建按钮后,将其事件与一个自己的一个函数进行绑定, 在函数中处理你要做的事.

 
进来看看啊。有红包啊。过年了,大家新年好啊。
 
to chengjian:
第二个问题:你的方法我知道,但问题是,我在网络中接收到了一些消息,我要把他发给这个按钮中。我想知道怎么判断是哪个消息,难道我要在改消息包吗?我这个按钮控件有个Data属性,是Pointer类型的。我要通过这个来与按扭弹出的窗口联系。所以,我必须对发过来的消息进行判断,看是哪一个按钮的消息,其实就是QQ这样的。发过来的消息,是对应于哪一个按钮的。
第一个问题:我说了,我是想通过handle取得窗口的对象。如果只是让他显示,有很多这样的API函数,我不仅要让他显示,我还要取得窗体的对象,来操作这个窗口。
 
恭喜发财,红包拿来![:)]
 
missingwind,你又来了啊。发表下你的意见啊。别开口就要包。我给消息包你。快帮我想下。
 
1。通过FindControl
var
AForm :TForm;
begin
AForm := TForm(FindControl(AHandle));
ShowMessage(AForm.Caption);
end;
2.也简单
在动态生成的按钮的时候,给他们设置Tag编号
然后在事件中通过TButton(Sender).Tag来区分

我说明白了吗
 
to yostgxf:
第一个问题,我主要是要通过thandle来得到这个窗口对象,因为我以后会对该窗口对象进行很多的操作,我还要访问窗口对象中的属性。所以我主要是想得到窗口对象,不是显示。
第二个问题,我是想象QQ那样,对发过来的网络包,我能区分出:是哪一个用户按钮的消息。然后我再采取相应的行动,我是想知道,我收到的网络消息,怎么与动态生成的按钮联系起来,或者准备的说,我收到一个消息包后,我要能根据这个包,来访问与这个包相关的按钮的引用。注意,也是引用。我要通过这个引用来让按钮变色或弹出相应的聊天窗口。
 
哦,第一个问题你是想通过类似form1.Button1.click的操作,是这个意思吗?
如果你的相关函数(从外面操作的)做在一个基类窗体中,然后把基类窗体自注册,用FindControl也能实现。
var
AForm :TYouForm;
begin
AForm := TYouForm(FindControl(AHandle));
AForm.就行了

当然也可以这样通过EnumChildWindows



 
to yostgxf:
不行啊。出错。
procedure XXX;
var
frmSendMessage: TfrmSendMessage;
begin
......
frmSendMessage:= TfrmSendMessage(FindControl(thWnd));
frmSendMessage.BringToFront;
end;
 
frmSendMessage:= TfrmSendMessage(FindControl(thWnd));
这种语句我执行后,frmSendMessage里面的值全是空的。我晕啊。WHY,Please tell me why?????
 
过年了,富翁们哪去了啊。
 
做一个函数不就OK了,函数打开指定的窗体,参数定义了打开窗体时执行的操作。
 
多人接受答案了。
 

Similar threads

回复
0
查看
811
不得闲
回复
0
查看
804
不得闲
回复
0
查看
847
不得闲
后退
顶部