Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.09.30;
Скачать: CL | DM;

Вниз

Проблема при подаче сообщения WM_COPYDATA из формы в форму.   Найти похожие ветки 

 
oduvan ©   (2002-08-13 19:37) [0]

Почемуто в этом коде глюк такой:
При посылке сообщения в ввиде кода из первой(1) программы:

var
DataStruct : TCOPYDATASTRUCT;
begin
if ListContacts.SelCount=0 then exit;
v1:=ListContacts.Selected.Caption;
v2:=ListContacts.Selected.SubItems.Strings[0];
v:=v1+"---"+v2;
with DataStruct do
begin
dwData := 0;
cbData := Length(v)+4;
lpData := Pointer(v);
end;
SendMessage(FindWindow(pchar("TPostForm"),nil),
WM_CopyData, 0, Integer(@DataStruct));//8101973

А при получении кодом из второй(2) программы:

Procedure TPostForm.onCopyData(Var Msg: TMessage);
var
v1,v2,s:string;
Begin
SetForegroundWindow(handle);
SetWindowPos(handle,HWND_TOPMOST,left,top,width,height,SWP_SHOWWINDOW);
SetWindowPos(handle,HWND_NOTOPMOST,left,top,width,height,SWP_SHOWWINDOW);
s:=pchar(PCopyDataStruct(Msg.LPARAM)^.lpData);
v1:=copy(s,1,pos("---",s)-1);
delete(s,1,pos("---",s)+2);
v2:=s;
if v2<>"" then
if pos("@",v2)>0 then
begin
Application.CreateForm(TWriteMail, WriteMail);
WriteMail.FSendName:=v1;
WriteMail.FSendEmail:=v2;
writemail.showmodal;
WriteMail.free;
end;
End;

....происходит следующее, создается и открываеся модальная форма WriteMail, при этом та форма, которая посылала сообщение(1), становится недоступной, до тех пор, пока не закроется это созданное окно (WriteMail), такое ощющение что новая форма (WriteMail) создается как потомок той формы, которая посылает сообщение, а мне надо, чтобы я мог продожать работать с формой "посыльным"(1).

Что такое?


 
oduvan ©   (2002-08-13 19:39) [1]

Извеняюсьза граматику! Тороплюсь!


 
cdaDmitriy ©   (2002-08-13 19:59) [2]

Внутри второй(2) программы раздели прием месаги и создания
новой формы


 
cdaDmitriy ©   (2002-08-13 20:01) [3]

и сделай это на postMessage чтобы освоюодить обработчик


 
oduvan ©   (2002-08-13 20:35) [4]

Попробую!



Страницы: 1 вся ветка

Текущий архив: 2002.09.30;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.012 c
1-98178
explorer
2002-09-18 09:31
2002.09.30
При создании формы вызвать событие закрытия формы


1-98054
гончий
2002-09-18 14:23
2002.09.30
Как получить текущую дату в обход стандартных функций Date & Now


14-98347
AL2002
2002-09-06 11:29
2002.09.30
Тут надо такая козырнющая штука, прям не знаю, знает кто или нет


3-97951
vJet
2002-09-06 20:01
2002.09.30
Проблема с Table


1-98055
denisww
2002-09-19 11:49
2002.09.30
Глючит и всё.radiogroup