Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "WinAPI";
Текущий архив: 2002.09.30;
Скачать: [xml.tar.bz2];

Вниз

Проблема при подаче сообщения 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 вся ветка

Форум: "WinAPI";
Текущий архив: 2002.09.30;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.45 MB
Время: 0.009 c
14-98335
Aga
2002-09-05 16:41
2002.09.30
ярлыки


3-97959
maxim2
2002-09-09 09:54
2002.09.30
Как поставить фильтр


1-98137
AndreyS
2002-09-17 14:26
2002.09.30
Какой инсталятор лучше?


1-98191
ych_boriss
2002-09-17 10:26
2002.09.30
Стыковка и расстыковка контролей


1-98068
Лана Розанова
2002-09-19 08:14
2002.09.30
Handle





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский