- - PR -
Windowsアプリケーションでのヘルプの提供
投稿者 | 投稿内容 | ||||||||
---|---|---|---|---|---|---|---|---|---|
|
投稿日時: 2006-01-26 12:14
お世話さまです。
VB.NET2003+Windowsフォームでの話です。 HelpProviderコンポーネントを使って、あらかじめ作成したヘルプ (.htmファイル)を各画面で表示したいのですが、コントロールに フォーカスを当ててからF1キーの押下で表示させるのではなく、 コントロールのクリックイベントで表示させたいのです。 例えば、『ヘルプ』と書いたButtonコントロールが画面上にあり、 このButtonコントロールをクリックすれば当該.htmファイルが 表示されるようにしたいのです。 つまり、ButtonコントロールのClickイベント内部でF1キー押下 のイベントを発生させるやり方をご教示願いたいのですが… ポップアップヘルプによる表示も考えたのですが、 最大化・最小化ボタンはフォームに必要なので この方法を選びました。 以上、宜しくお願い致します。 | ||||||||
|
投稿日時: 2006-01-26 13:10
たとえ、F1 キーを Send したとしても、
Button をクリックした時点で ActiveControl が変わってしまうため、 クリック前にフォーカスがあったコントロールに対応したヘルプは表示されません。 強行で実現するというのであれば、とても泥臭い実装になります。 本当にそのような仕様で良いのでしょうか? _________________ C# と VB.NET の入門サイト じゃんぬねっと日誌 | ||||||||
|
投稿日時: 2006-01-26 13:28
右上の?マークを落とす 方式は?
| ||||||||
|
投稿日時: 2006-01-26 13:30
こんにちは。
早速のレス、ありがとうございます。 >Button をクリックした時点で ActiveControl が変わってしまうため、 クリック前にフォーカスがあったコントロールに対応したヘルプは表示されません。 なるほどー、おっしゃる通りですね。^^; 現状ではPDFファイルをヘルプとして表示してるのですが、 これが起動に時間がかかるため、何か良い方法はないか と考えた次第です。 .htmファイルをパス指定で表示できればそれでも構わないのですが、 どのようにすればよいのかが解りませんで… | ||||||||
|
投稿日時: 2006-01-26 13:34
MMXさん、こんにちは。
レス、ありがとうございます。 その方法もトライしてみたのですが、?を右上に出すためには 最大化と最小化ボタンを犠牲にしないとダメですよね? 最大化・最小化ボタンも残したままで?を表示できれば問題は 解決なんですが… | ||||||||
|
投稿日時: 2006-01-26 13:47
2 回目以降ならそんなに気にならなくなりませんか? というか、現状はどのきっかけで起動するのかが判らないわけですが...w
手動で表示するにしても、前のコントロールを保持しないといけませんよね? どうしてもやりたいですか? _________________ C# と VB.NET の入門サイト じゃんぬねっと日誌 | ||||||||
|
投稿日時: 2006-01-26 13:53
もしかして、ですけど... これって、こういう意味ではないですよね?
前のレスは、そのコントロールに合ったパスという解釈で書き込みました。 _________________ C# と VB.NET の入門サイト じゃんぬねっと日誌 | ||||||||
|
投稿日時: 2006-01-26 15:03
PDFの起動の方は確かに初回以降は早いのですが、
どーしても初回の遅さがユーザに不評で許してもらえず…orz >これって、こういう意味ではないですよね? そういう意味でした。w これならわざわざフォームにHelpProviderコンポーネント を貼り付ける必要もないですね。 ありがとうございます、非常に助かりました。 |