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

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

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

Re[6]: HelpをMenuItemのクリックで表示さす方法


(過去ログ 97 を表示中)

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

■57724 / inTopicNo.1)  HelpをMenuItemのクリックで表示さす方法
  
□投稿者/ ミネ (5回)-(2011/03/10(Thu) 16:11:30)
ミネ さんの Web サイト

分類:[VB.NET/VB2005 以降] 

VisualStudio2005(VB)でApplicationを作成しそのHtmlHelpを作成しました。
F1をクリックすればこのHelpを表示できるのですが出来ればMenuItemの「ヘルプ]をクリックしてHelpを標示させたいと思いいろいろ調べてSendKeyを使う方法が見つかりましたので下記のようにプログラムしました。

    Public Shared Sub Send(ByVal keys As String)
    End Sub

    Private Sub ヘルプToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) _
            Handles ヘルプToolStripMenuItem.Click
        SendKeys.Send("{F1} ")    
    End Sub

しかしこれを実行しますとSendKeys.Send("{F1} ")  のところでHangUpしてしまいます。
どのようにすればよいかどなたかお教えください。 よろしくお願い申し上げます。

引用返信 編集キー/
■57725 / inTopicNo.2)  Re[1]: HelpをMenuItemのクリックで表示さす方法
□投稿者/ ピセ (1回)-(2011/03/10(Thu) 16:21:14)
No57724 (ミネ さん) に返信
HTMLヘルプとは、.chm形式のヘルプファイルでしょうか?
それならば、Help.ShowHelp(引数は要確認)でできます。
引用返信 編集キー/
■57730 / inTopicNo.3)  Re[2]: HelpをMenuItemのクリックで表示さす方法
□投稿者/ ミネ (6回)-(2011/03/10(Thu) 18:02:10)
ミネ さんの Web サイト
No57725 (ピセ さん) に返信
> ■No57724 (ミネ さん) に返信
> HTMLヘルプとは、.chm形式のヘルプファイルでしょうか?
> それならば、Help.ShowHelp(引数は要確認)でできます。
ビセさん早速にご指導ありがとうございました。
質問に記載の漏れがあったようです。
HTMLヘルプとは、.chm形式のヘルプファイルです。
またAppのStart formにはhelpProviderがSetしてありApp_Loadで

With HelpProvider1
'ヘルプファイルを指定します。
.HelpNamespace = "D:\***\bin\debug\***HtmlHelp.chm"
.SetShowHelp(Me, True)
End With

としています。 これでF1をクリックすればHelpが起動することを確認しています。
この状態でSendKeyでF1をクリックすればHelpが起動すると思ったのですが質問の
ようにHangUpしてしまいます。 対策をお教えください。 よろしく。
引用返信 編集キー/
■57733 / inTopicNo.4)  Re[3]: HelpをMenuItemのクリックで表示さす方法
□投稿者/ Azulean (702回)-(2011/03/10(Thu) 22:57:37)
Help.ShowHelp で明示的に表示したら良いのでは?
http://msdn.microsoft.com/ja-jp/library/81ee1k5y.aspx
引用返信 編集キー/
■57734 / inTopicNo.5)  Re[4]: HelpをMenuItemのクリックで表示さす方法
□投稿者/ ミネ (7回)-(2011/03/11(Fri) 09:17:31)
ミネ さんの Web サイト
No57733 (Azulean さん) に返信
> Help.ShowHelp で明示的に表示したら良いのでは?
> http://msdn.microsoft.com/ja-jp/library/81ee1k5y.aspx
Azulean さん早速にご指導ありがとうございました。
プログラムを

  Sub Form1_Load()
        With HelpProvider1
            'ヘルプファイルを指定します。
            .HelpNamespace = "***HtmlHelp.chm"
            'Form1のヘルプを表示するように設定します。
            .SetShowHelp(Me, True)
        End With

    Public Shared Sub ShowHelp(ByVal parent As Control, ByVal url As String)
    End Sub

    Private Sub ヘルプToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) _
            Handles ヘルプToolStripMenuItem.Click
        Help.ShowHelp(Me, Me.HelpProvider1.HelpNamespace)
    End Sub

とすることで問題が解決いたしました。(MenuItem_ClickでもF1 ClickでもHelpが表示されます)
本当にありがとうございます。

ただ
    Public Shared Sub ShowHelp(ByVal parent As Control, ByVal url As String)
    End Sub
はなくても動作するようなのですが必要なのでしょうかお教えいただけばありがたいのですが。
よろしくお願い申し上げます。

解決済み
引用返信 編集キー/
■57749 / inTopicNo.6)  Re[5]: HelpをMenuItemのクリックで表示さす方法
□投稿者/ Azulean (703回)-(2011/03/11(Fri) 23:31:39)
No57734 (ミネ さん) に返信
> ただ
> Public Shared Sub ShowHelp(ByVal parent As Control, ByVal url As String)
> End Sub
> はなくても動作するようなのですが必要なのでしょうかお教えいただけばありがたいのですが。
> よろしくお願い申し上げます。

試したらすぐわかると思いますが、試してみませんか?


答えから言うと、不要です。
MSDN のサイトに書いてあるのは、こういった形の関数が Help クラスに定義されているよと言う意味を示すだけです。
引用返信 編集キー/
■57753 / inTopicNo.7)  Re[6]: HelpをMenuItemのクリックで表示さす方法
□投稿者/ ミネ (9回)-(2011/03/13(Sun) 09:33:39)
ミネ さんの Web サイト
No57749 (Azulean さん) に返信
> ■No57734 (ミネ さん) に返信
>>ただ
>> Public Shared Sub ShowHelp(ByVal parent As Control, ByVal url As String)
>> End Sub
>>はなくても動作するようなのですが必要なのでしょうかお教えいただけばありがたいのですが。
>>よろしくお願い申し上げます。
>
> 試したらすぐわかると思いますが、試してみませんか?
>
>
> 答えから言うと、不要です。
> MSDN のサイトに書いてあるのは、こういった形の関数が Help クラスに定義されているよと言う意味を示すだけです。
Azulean さん ご指導ありがとうございます。
お返事を送信したつもりが出来ていなかったようで失礼いたしました。
Sub ShowHelpが必要かは削除しても動作することを確認していたのですがわざわざ記載されている意味が判らず、
そのため質問させていただきました。 今回のご指導でその意味がはっきりとわかりました。
厚く御礼申し上げます。
解決済み
引用返信 編集キー/


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

このトピックに書きこむ

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

管理者用

- Child Tree -