コンテキストヘルプに関して – プログラミング – Home

コンテキストヘルプに関して
 
通知
すべてクリア

コンテキストヘルプに関して


まなみ
 まなみ
(@まなみ)
ゲスト
結合: 15年前
投稿: 14
Topic starter  

いつもお世話になります。
WindowsXP,VC9にてCFormView+モードレスダイアログの組み合わせで
アプリを作成しています。
ダイアログのプロパティにてコンテキストヘルプにチェックを入れ
タイトルバーに?ボタンを表示させています。
この?ボタンをクリックすれば、マウスカーソルが変化し、
ヘルプモード(?)に変わりますが、CFormView側は通常カーソル
のままとなってしまいます。
CFormView側のヘルプモードに変更することはできないでしょうか?

いつも質問ばかりで申し訳ありませんが、宜しくお願い致します。


引用解決済
トピックタグ
subaru
 subaru
(@subaru)
ゲスト
結合: 19年前
投稿: 381
 

ウインドウに対して
SendMessage(WM_SYSCOMMAND, SC_CONTEXTHELP);
とかしてやるとヘルプモード(?)になってくれるようです。

#そのようなユーザーインターフェースが使いやすいか疑問ではありますが・・・


返信引用
まなみ
 まなみ
(@まなみ)
ゲスト
結合: 15年前
投稿: 14
Topic starter  

回答ありがとうございます。

> ウインドウに対して
> SendMessage(WM_SYSCOMMAND, SC_CONTEXTHELP);
> とかしてやるとヘルプモード(?)になってくれるようです。
WM_SYSCOMMANDのイベントを捕まえて
AfxGetMainWnd()->SendMessage(WM_SYSCOMMAND, SC_CONTEXTHELP);
行ったところ、CFormViewは?になりましが、ダイアログ側はなりませんでした。
PostMessageに変更したところ、逆になりました。
やり方が間違っているのでしょうかね。


返信引用
subaru
 subaru
(@subaru)
ゲスト
結合: 19年前
投稿: 381
 

1つのウインドウでしか有効にならないような仕様なのかもしれませんね。
各ウインドウでカーソルだけIDC_HELPに変更してそのように見せかけるとかはダメ?(^_^;


返信引用
まなみ
 まなみ
(@まなみ)
ゲスト
結合: 15年前
投稿: 14
Topic starter  

回答ありがとうざいます。

既に試みたんですが、OnSetCursorにも飛んでこないんです。
?ボタンを押した後は、押したウィンドウのみしかイベントが
発生していない感じです。

?ボタンが押されたときに、SC_CONTEXTHELPを処理するのではなく
疑似的に処理するしかないのかなと思っています。

でも、そーすると全てのボタンなどに今はヘルプ中だから・・・
ヘルプ中でないから通常処理と言う風に記述しないといけない
からかなり大変そうです。


返信引用

返信する

投稿者名

投稿者メールアドレス

タイトル *

プレビュー 0リビジョン 保存しました
共有:
タイトルとURLをコピーしました