C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

Re[4]: SendMessageについて


(過去ログ 19 を表示中)

[トピック内 5 記事 (1 - 5 表示)]  << 0 >>

■7769 / inTopicNo.1)  SendMessageについて
  
□投稿者/ ななはち (1回)-(2007/09/14(Fri) 16:10:14)

分類:[C#] 

教えてください。

SendMessageのWPARAMとLPARAMは、メッセージ依存の追加情報とMSDNと書いてありますが、
たとえば、SendMessageの情報が複数あった場合、その複数ある情報の何番目かをしていすることは
可能なのでしょうか?

そもそも、WPARAMとLPARAMはSendMessageからどのように情報を取得するのでしょうか?

よろしくお願いいたします。

引用返信 編集キー/
■7771 / inTopicNo.2)  Re[1]: SendMessageについて
□投稿者/ 囚人 (165回)-(2007/09/14(Fri) 16:45:33)
何に困っているのか伝わってないんですが、とりあえずこういうので分かりますか?

LRESULT CALLBACK WndProc(HWND hwnd , UINT msg , WPARAM wParam , LPARAM lParam) {
switch(msg) {
case WM_CREATE:
LPCREATESTRUCT pCreateStruct = (LPCREATESTRUCT)lParam;
}
}

引用返信 編集キー/
■7778 / inTopicNo.3)  Re[2]: SendMessageについて
□投稿者/ まどか (371回)-(2007/09/14(Fri) 17:24:56)
WParamとLParamは情報のある場所(ポインタ)を表します。
で、SendMessageは引数として情報のポインタを2つ持つ、というところまでが決め事です。
それぞのポインタの指す場所にどんな構造のデータが存在するかは、メッセージ(WM_〜等)ごとの決め事です。
たとえばWM_LBUTTONCLICKを扱おうとしたら、そのヘルプにそれぞれのポインタの指す先の意味が書いてありますので
それにしたがって処理を書くことになります。

引用返信 編集キー/
■7781 / inTopicNo.4)  Re[3]: SendMessageについて
□投稿者/ Blue (344回)-(2007/09/14(Fri) 17:42:12)
No7778 (まどか さん) に返信
> WParamとLParamは情報のある場所(ポインタ)を表します。
情報そのものを指すケースもありますよね?

まぁ、MSDNで WM_〜 の項目のリファレンスを見ればそれぞれ何を指定すればいいのかわかります。
ただ、C言語ベースなのでとうぜん知識がないと理解しにくいと思います。


たとえば
WM_GETTEXT
http://msdn2.microsoft.com/en-us/library/ms632627.aspx

wParamには最大文字数、lParamには格納する場所を示す値(ポインタ)
を指定します。
引用返信 編集キー/
■7794 / inTopicNo.5)  Re[4]: SendMessageについて
□投稿者/ ななはち (2回)-(2007/09/14(Fri) 19:54:58)
回答ありがとうございます。

WPARAMとLPARAMは情報のポインタとして扱うのですね。
私が勘違いしていました。

ありがとうございました。

解決済み
引用返信 編集キー/


トピック内ページ移動 / << 0 >>

このトピックに書きこむ

過去ログには書き込み不可

管理者用

- Child Tree -