- 締切済み
ウィンドウの最小化とタスクトレイアイコンのメニュー
タスクトレイにアイコンを表示し、左クリックにてある処理を実行するようにしました。 アプリのウィンドウが開いているときは、処理が行われるのですが、ウィンドウが最小化の時は、何も起きません。 最小化のときでも処理が実行されるようにするにはどうすれば良いのでしょうか? 原因の検討がつかないのでこれ以上の情報が載せれないのですが、心当たりの方が見えましたお願いいたします。
- みんなの回答 (2)
- 専門家の回答
みんなの回答
- taka_tetsu
- ベストアンサー率65% (1020/1553)
>処理の最初に、ShowWindow(SW_NORMAL);を入れてウィンドウを元のサイズに戻してやることで、処理を受け付ける用になりました。 ShowWindowを実行するのはいつなんですか? 左クリックをしたときということではなくて? というのが見えてこないのですが。 >原因の見当がつかなくても、不明な事象が発生している個所はもっとしぼりこめますよね。 例えばですけど、「タスクトレイのアイコンをクリックして メニューを出して項目を選択して処理を実行させる」 なんてことでしたら、 1.クリックしても何もイベントが発生しない 2.イベントは発生しているようだけど、メニューが出てこない 3.メニューを選択しても、メインウィンドウに書いたメニューの処理が動かない とかってこんな風に絞り込めますよね。 ようは、「どこまで動いていて、どこからが動かない」という情報が欲しいんです。 ただ漠然と「何も起きません」といわれても、じゃぁ、最小化やめれば?とか言うしかなくなってしまいますよね。 で、 >アプリのウィンドウが開いているときは、処理が行われるのですが、ウィンドウが最小化の時は、何も起きません。 ということですが、SDKで単純に作った場合はそんな現象は発生しません。 MFCの内部処理に起因する、なんらかの原因となるコードをVitaminBBさんが書いているものと思われます。
- taka_tetsu
- ベストアンサー率65% (1020/1553)
以前の質問を見ていない人のために、環境等は必ず書いてくださいね。 >原因の検討がつかないのでこれ以上の情報が載せれないのですが、心当たりの方が見えましたお願いいたします。 >タスクトレイにアイコンを表示し、左クリックにてある処理を実行するようにしました。 まず、何をしているのですか? 「ある処理」とはなんですか? クリック自体のメッセージがきていないのですか? 原因の見当がつかなくても、不明な事象が発生している個所はもっとしぼりこめますよね。
お礼
回答ありがとうございます。 適確な表現ではないかもしれませんが、 どうやらウィンドウが最小化になっているときは、 プログラムが眠っていてあるコマンドは動かない状況になっているようですね。 処理の最初に、ShowWindow(SW_NORMAL);を入れてウィンドウを元のサイズに戻してやることで、処理を受け付ける用になりました。 環境 WIN98 VC++6.0 MFC
お礼
回答ありがとうございます。 この件に関しましては、こちらの力不足で正確な状況を 伝えることが出来ません。 ここで一旦締め切らせていただきます。