因为是初学者,所以不太看得懂程序,调用一个新建窗体,代码如下:
按下新建按钮后调用下面的程序
if Sender=nil then Exit;
if Sender is TtreeNode then
SendMessageToClint(nil, TreeRm.Selected)
else
SendMessageToClint(Sender, nil);
sendMessageToClint 函数如下:
procedure TfrmCarrierDB.SendMessageToClint(Sender: TObject; Node: TtreeNode);
var
szHandle: THandle;
i: integer;
begin
szHandle:=0; for i:=0 to FrmList.Count-1 do
begin
if TFrmAncestor(FrmList.Items[i]).Tag=Windows_id then
begin
szHandle:=TFrmAncestor(FrmList.Items[i]).Handle;
break;
end;
end; {
如果句柄为0,说明是主窗体自己的消息,
应该向自己发消息
} if (szHandle>0) and (Sender<>nil) then
begin
if Sender=SM22 then PostMessage(szHandle, Msg_Add, 0, 0);
end; if (szHandle>0) and (Node<>nil) then
begin
case Node.ImageIndex of
0:PostMessage(szHandle, Msg_ALL, 0, 0);
1:PostMessage(szHandle, Msg_TRN, TpTran(Node.Data).Tran_ID, 0);
2:PostMessage(szHandle, Msg_RTU, TPRTU(Node.Data).RTU_ID, 0);
3:PostMessage(szHandle, Msg_ARE, TPArea(Node.Data).ID, 0);
4:PostMessage(szHandle, Msg_SUB, TPSubArea(Node.Data).Sub_Sect_ID, 0);
5..13:PostMessage(szHandle, Msg_MTR, TPMeterData(Node.Data).M_ID, 0);
end;
end;
end;
然后TFrmAncestor就是一个什么也没有的窗体,后来就出现了新建的窗体了,里面有很多原来信息的,实在不懂
按下新建按钮后调用下面的程序
if Sender=nil then Exit;
if Sender is TtreeNode then
SendMessageToClint(nil, TreeRm.Selected)
else
SendMessageToClint(Sender, nil);
sendMessageToClint 函数如下:
procedure TfrmCarrierDB.SendMessageToClint(Sender: TObject; Node: TtreeNode);
var
szHandle: THandle;
i: integer;
begin
szHandle:=0; for i:=0 to FrmList.Count-1 do
begin
if TFrmAncestor(FrmList.Items[i]).Tag=Windows_id then
begin
szHandle:=TFrmAncestor(FrmList.Items[i]).Handle;
break;
end;
end; {
如果句柄为0,说明是主窗体自己的消息,
应该向自己发消息
} if (szHandle>0) and (Sender<>nil) then
begin
if Sender=SM22 then PostMessage(szHandle, Msg_Add, 0, 0);
end; if (szHandle>0) and (Node<>nil) then
begin
case Node.ImageIndex of
0:PostMessage(szHandle, Msg_ALL, 0, 0);
1:PostMessage(szHandle, Msg_TRN, TpTran(Node.Data).Tran_ID, 0);
2:PostMessage(szHandle, Msg_RTU, TPRTU(Node.Data).RTU_ID, 0);
3:PostMessage(szHandle, Msg_ARE, TPArea(Node.Data).ID, 0);
4:PostMessage(szHandle, Msg_SUB, TPSubArea(Node.Data).Sub_Sect_ID, 0);
5..13:PostMessage(szHandle, Msg_MTR, TPMeterData(Node.Data).M_ID, 0);
end;
end;
end;
然后TFrmAncestor就是一个什么也没有的窗体,后来就出现了新建的窗体了,里面有很多原来信息的,实在不懂
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货