- ベストアンサー
TextFile1.txtを表示させる
MenuStripのメニュー「ヘルプ」(説明書き)をクリックするとWindowsフォームのTextFile1.txtを表示させたいのですが、どのようなコードを書けば良いのでしょうか。宜しくお願いいたします。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
- ベストアンサー
回答No.1です。 やっと質問の意味がわかりました。 テンプレートに表示される「テキストファイル」は、画面 (フォーム)ではありません。従って「Windows フォーム」 や「ダイアログ」のように表示させることはできません。 A. テンプレートで画面(フォーム・ダイアログ)扱いのもの Windowsフォーム、ダイアログ、エクスプローラフォーム MDI親フォーム、情報ボックス …など。他にも名前に「フォーム」と付くものはこちら B. テンプレートで画面(フォーム・ダイアログ)扱いではないもの クラス、モジュール、インターフェイス、設定ファイル、 テキストファイル、アイコンファイル …など。「ファイル」と名前が付くものは全てこちら A. に分類されるものは画面(フォーム)として表示させることが できますが、B. に分類されるものはできません。 テキストファイルの内容を表示させるためには、質問者さんが 調べたとおり ・Process.Start を使ってメモ帳などに表示 ・テキストを読み込んで、コントロールまたはメッセージ ダイアログに表示 のどちらかしか方法がありません。
その他の回答 (1)
質問の意味がわからないのですが、 「Windowsフォーム『で』TextFile1.txtを表示させたい」 ということでしょうか? ・表示用のフォームを新しく作って、TextBox をひとつ貼り付け。 ・TextBox の Multiline プロパティを True にして縦横の大きさを 適当な大きさに変更。 ・FormLoad イベントにテキストファイルを読み込んで TextBox を表示するコードを記述 [TextBox名].Text = System.IO.ReadAllText([TextFile1.txtのパス]) ・作った表示用フォームを MenuStrip のメニューのクリック イベントで表示 で良いのでは。
補足
私はvb.2005を使ってますが、プロジェクトを右クリックすると、メニューから「追加」→「Windowsフォーム」を選びます。そうするとテンプレートが表示され、「Windowsフォーム」や「ダイアログ」や「エクスプローラフォーム」…などがあります。その中に、テキストファイルがあり、それをクリックし、追加ボタンを押すとデフォルトでは「TextFile1.txt」がプロジェクトに追加されます。ダイアログボックスですとDialog1.ShowDialog(Me)で表示させることができます。 そのコードがわからず、 「DOBON.NET」さんのwebから Public Shared Function GetAppPath() As String Return System.IO.Path.GetDirectoryName( _ System.Reflection.Assembly.GetExecutingAssembly().Location) End Function と、「C#とVB.NETの入門サイト」の「他のプログラムを起動する」を引用し、 Private Sub 使い方MToolStripMenuItem_Click(ByVal sender As System.Object, _ ByVal e As System.EventArgs) Handles 使い方MToolStripMenuItem.Click System.Diagnostics.Process.Start("Notepad", GetAppPath() _ & "\TextFile1.txt") End Sub で表示されることができますが、ダイレクトに表示させることはできないでしょうか。
お礼
よくわかりました。A,B分類も教えていただいて得した感じです。 ありがとうございました。