Différences
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente | ||
prog:lazarus:cas:wm_messages:envois [25/04/2023 12:32] thierry [SendMessage] |
prog:lazarus:cas:wm_messages:envois [25/04/2023 12:34] (Version actuelle) thierry [Perform] |
||
---|---|---|---|
Ligne 4: | Ligne 4: | ||
==== PostMessage ==== | ==== PostMessage ==== | ||
postMessage : Envoie un message dans la file d'attente de messages associée au thread et revient **__sans attendre__** que le thread ai traité ce message. | postMessage : Envoie un message dans la file d'attente de messages associée au thread et revient **__sans attendre__** que le thread ai traité ce message. | ||
+ | |||
+ | On pourrait dire que ce mécanisme est Asynchrone. | ||
<code delphi> | <code delphi> | ||
PostMessage(Application.MainForm.Handle,1222,0,0); | PostMessage(Application.MainForm.Handle,1222,0,0); | ||
Ligne 9: | Ligne 11: | ||
==== SendMessage ==== | ==== SendMessage ==== | ||
SendMessage : appelle la procédure de fenêtre pour la fenêtre spécifiée et ne revient pas tant que la procédure de fenêtre n'a pas traité le message. | SendMessage : appelle la procédure de fenêtre pour la fenêtre spécifiée et ne revient pas tant que la procédure de fenêtre n'a pas traité le message. | ||
+ | |||
+ | Par comparaison avec ''PostMessage'' on pourrait assimiler ce mécanisme avec du Synchrone. | ||
<code delphi> | <code delphi> | ||
SendMessage(Application.MainForm.Handle,1222,0,0); | SendMessage(Application.MainForm.Handle,1222,0,0); | ||
Ligne 14: | Ligne 18: | ||
==== Perform ==== | ==== Perform ==== | ||
+ | ''Perform'' a le même comportement que ''SendMessage'' (Synchrone) | ||
<code delphi> | <code delphi> | ||
Application.MainForm.Perform(1222,0,0); | Application.MainForm.Perform(1222,0,0); |