- - PR -
[デスクトップの表示] イベント
1
投稿者 | 投稿内容 | ||||||||
---|---|---|---|---|---|---|---|---|---|
|
投稿日時: 2006-05-08 11:26
[デスクトップの表示]ボタンを押したときのイベントを拾いたいのですが、どんなメッセージが出るかご存知の方ご教授下さい。Spy++で調べたんですが良くわかりませんでした
システムメニューの最小化ボタンを押したときに、最小化直前の処理を行っているのですが、[デスクトップの表示]ボタンを押したときにはこのイベントが発生しないためその処理が出来ずに困っています よろしくお願いします | ||||||||
|
投稿日時: 2006-05-08 11:44
確か Layout イベントは発生しますね。 _________________ C# と VB.NET の入門サイト じゃんぬねっと日誌 | ||||||||
|
投稿日時: 2006-05-08 11:56
WM_SIZE で wParam が SIZE_MINIMIZED のようですね。多分。
ビタっとくるイベントは… SizeChanged っぽいですが、「最小化」かどうかがハッキリわかりませんね。 _________________ 囚人のジレンマな日々 | ||||||||
|
投稿日時: 2006-05-08 12:07
見分ける必要がないようなので、後は WindowState を見れば良さそうかな。 _________________ C# と VB.NET の入門サイト じゃんぬねっと日誌 | ||||||||
|
投稿日時: 2006-05-08 12:28
お返事ありがとうございました
C#でWindowアプリを作成しておりまして、最小化の直前に あるコントロールをフォームのControlsから削除する必要が あったため、このようなスレを立てさせて頂きました じゃんぬねっとさん イベント関数の引数eのAffectedControlに問題のコントロールが 含まれた場合に処理するとうまくいきました。ありがとうございました 囚人さん WM_SIZE の SIZE_MINIMIZED は最小化完了後に発生するので 今回の目的では手遅れでした。ありがとうございました | ||||||||
|
投稿日時: 2006-05-08 12:54
え? 何故でしょうか? 削除を必要とするシナリオが想定できませんが、 個人的に知りたいので、理由を教えて頂けませんか? もしかして、ビデオ キャプチャ コントロール系統でしょうか? キャプチャ部分がデスクトップに居残る場合がありますが...
問題のコントロールが入っている保証はないと思いますよ。 それと、WindowState も見るべきだと思います。 _________________ C# と VB.NET の入門サイト じゃんぬねっと日誌 | ||||||||
|
投稿日時: 2006-05-08 13:06
お返事ありがとうございます
はい、WindowsStateだけ見るようにします。そうするとWindProcで拾っていたシステムメニューの最小化は要らなくなりました。ありがとうございます NotifyIconを使用しているのですが、現在利用しているコントロールをフォームに貼り付けた状態で最小化するとコントロールのウィンドウハンドルが破棄されるのか、その直後にフォームのShowInTaskbarをfalseにすると修復不能な例外が発生します。 そのコントロール(どこかからお客さんが拾ってきた)に問題があるのだと思うのですが、とてもわたしに理解できるものではないので、苦肉の策としてそうしております [ メッセージ編集済み 編集者: ジロボット 編集日時 2006-05-08 13:14 ] |
1