• 締切済み

ボタンをクリックしてファイルを開く

Microsoft Visual Basic 2010 Expressを使ってプログラミングをし始めた初心者です。 Windowsフォームアプリケーションを作っているのですが、わからないことがありましたので質問します。 あるボタンを作り、そのボタンを押したときに特定のファイルをシステムで設定してある既定のプログラム(docxならWord、xlsxならexcelなど)で開くプログラムを作成したいです。 うまく説明できてないと思うので、下記が例です。 「Button1」を作ったとします。 そして、「Button1」をクリックしたときに、 例えばマイドキュメントの「A.docx」をWordで開くように設定するには どのようにクリックイベントのプログラムを作成すればよいのでしょうか? よろしくお願いします。

みんなの回答

  • pcb39431
  • ベストアンサー率84% (16/19)
回答No.5

解決しましたか?

  • pcb39431
  • ベストアンサー率84% (16/19)
回答No.4

Process.Startを使った処理ではダメなのでしょうか? それならば、API関数を使った方法を紹介します。 使い方はご自身で考えてください。

参考URL:
http://www.winapi-database.com/Program/Shell/ShellExecute.html
  • pcb39431
  • ベストアンサー率84% (16/19)
回答No.3

Process.Startを使った処理例 Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Dim MyDoc As String 'My Documentsフォルダを取得 MyDoc = System.Environment.GetFolderPath(Environment.SpecialFolder.Personal) Try 'ファイルを既定のアプリケーションで開く Process.Start(MyDoc & "\A.doc") Catch ex As Exception 'エラーの場合 MsgBox(ex.Message, MsgBoxStyle.Critical, "エラー") End Try End Sub

  • pcb39431
  • ベストアンサー率84% (16/19)
回答No.2

関連付けられたアプリケーションでファイルを開くには、  Process.Start(ファイル名) と指定します。

  • layy
  • ベストアンサー率23% (292/1222)
回答No.1

方法はいろいろあります。 「ファイル選択ダイアログ」を使う。ソフトのファイルを開く、によくある仕組み、ドライブとフォルダを選んでファイル選択する。サンプルもネットにあります。 それか コントロールにあるドライブリスト、フォルダリスト、ファイルリストを組み合わせて使う。ドライブ変わったとき、フォルダ変わったとき、ファイルをダブルクリックしたとき、随時イベントに処理を記載して行きます。 開くファイルが決まっているならSHELLあたり参考。 ファイルを決めるところから考えたいのでしょうか?。

y-king2
質問者

補足

Button1ならAのファイル、Button2ならBのファイルのように、 開きたいファイルは固定です。 ファイル選択ダイアログを使わずに、 ボタンをクリックするだけで起動するようにしたいです。

関連するQ&A

  • Excelへの対象ファイルの関連付け

    Excel2016への対象ファイルへの関連付けができずに困っています。.xlsや.xlsxファイルをダブルクリックすると、「この操作は現在飲スールされている製品に対してのみ有効です」というダイアログが出てExcel2016が起動しません。しかし、実際にはExcel2016はインストールされていて、Excel2016を起動してから対象ファイルを読み込むと正常に読み込むことができます。 <現在の環境> PC: 自作、メモリ8GB、CPUはPhenom945(4core) OS: Windows10 64bit(一年前にWin7から無償アップグレード) Office: Office365 ProPlus 元はWindows7でOfficeはOffice Personal2007+Powerpoint2007でしたが、Win10にアップグレード後に上記のOfficeをインストールしました。この状態の時に.xlsや.xlsxをダブルクリックしたら、古いExcel2007が起動しました。一方、Wordの方は.docや.docxをダブルクリックすると問題なくWord2016が起動します。 よくわからないので2種のOfficeが混在しているのが悪いのかと考え、Office Personal2007+Powerpoint2007を思い切ってアンインストールしたら、上記のダイアログボックスが出るようになりました。 また、「コントロールパネル-プログラム-既定のプログラム-既定のプログラムを設定する(リストからExcel2016を選択)-プログラムの関連付けを設定する」で関連付けを確認・変更しようとすると、対象のファイル群にはすべてチェックが付いた状態になっていて、かつ、チェックをはずすことはできません。つまり実質上何も変更できません。また、主要なファイル種(.xlsxや.xlsや.csvなど)の現在の既定のプログラムはすでにExcel2016に設定されています。

  • ボタンのクリックについて

    ボタンのクリックについて質問です。 CreateWindow()を使ってボタンを作成して表示させているのですが、 ボタンに画像などを表示させている時にクリックをすると、 一瞬、画像などが表示されていない状態になります。 裏画面処理でやってみたりしたのですが出来ませんでした。 やりたい事としては、 http://hp.vector.co.jp/authors/VA018351/ のようにボタンをクリックしても、ちらつきがない様にしたいです。 開発環境 XP Visual Studio 2005 C、C++

  • Excel2007【office2007 pro】を購入しました。しか

    Excel2007【office2007 pro】を購入しました。しかし、excel2007の形式【xlsx】の形式で保存すると、再度、開く事ができません。excel2007のソフトはもちろん、インストール済みです。 ファイルの色が白くなっております。ファイルを右クリックして、他のソフトから開くでエクセル2007があれば、うまくいくと思うのですが、ソフトが表示されません。 ちなみに、word2007も同じ症状が最初ありましたが、ファイルを右クリック、他のプログラムから開くでワード2007があったため、docxで開く事ができました。 ご存知の方、宜しくお願いします!!

  • VC++のwin32アプリ作成におけるボタンの扱い

    Visual C++でWin32アプリケーションを作成しています。 作成環境: Windows Vista 64bit (iMac bootcamp) Microsoft Visual C++ 2010 Express フォーム上にbutton1とbutton2がセッティングされている状態で、 button1_Clickの処理を行っている間に、button2が押されたとします。 その作用として、button1_Click内部の変数を変更したいと考えています。 この処理は可能でしょうか。 または、代替処理として、何らかの形で干渉する事は出来ますでしょうか。

  • XLSXファイルの開き方

    Windows Visutaです。EXCEL2007で作成し、保存した拡張子「xlsx」のファイルを開こうとすると、Windows フォトギャラリーが開き「この画像、またはビデオを開けません。このファイル形式がサポートされていないか、またはフォトギャラリーの最新の更新プログラムが適用されていません。」と表示されます。 ファイルを右クリック→プログラムから開く→Microsoft office Excel を選択すると開きました。 また、ファイルを右クリック→プログラムから開く→既定のプログラムの選択をクリック→Microsoft office Excelを選択しても開きました。 また、このとき「この種類のファイルを開くときは選択してプログラムをいつも使う」にチェックをいれたら・・・ ファイルがエクセルにかわりました。 こんな使い方で、よろしいですか?

  • クリックボタン(onclick)の配置について

    画面に表示させるクリックボタンの配置についてお聞きします。 <button onClick="ボタン押下時の動作()">Click</button> 上記の様に、クリックボタンをWeb画面に表示させる場合なんですが、 画面に表示させる方法を"left"や"center"の様に大まかに設定するのではなく、 詳細に座標を指定して表示する方法はありますでしょうか?

  • アイコンの表示について

    エクセルのアイコンが既定のアイコンに表示されなくなりました。拡張子はxlsでxlsxやワードのdocやdocxは表示されます。どうすれば元どうりになるのでしょうか?よろしくお願いします。

  • docxファイルについて

    word2007を使用しています。 文書をdocx形式で保存できるのですが,作成したファイルを読み込むことができません。他のPCで作成したdocx形式のファイルも同様です。 docx形式のファイルをクリックするとワードパッドが起動して,文字はぐちゃぐちゃな記号になっています。 よろしくお願いいたします。

  • ファイルの種類に関連づけられたアイコンを変更

    Word文書.docx、Excelデータ.xlsx、テキストファイル.txt、サンプル ミュージック.mp3を、下記のホームページのアイコンの変更手順に従って、それそれサンプル同様に、TSGさまよりダウンロードさせていただき、zipファイ ルを解凍したものに変更しました。 http://machico7.blog55.fc2.com/blog-entry-93.html ところがどういう訳か、Word文書.docxだけ、何か1つ白紙の文書で新規作成(2つ目の文書を追加)または、ドキュメントライブラリから何か1つのWord文書を削除する度に、自動で(勝手に)アイコンが元(既定のもの)に戻ってしまうのです。 他の操作(履歴機能でもとに戻す、次の不明な発行元からのプログラムに、このコンピューターへの変更を許可しますか?の問いで「いいえ」など)は、一切しておりません。 これは一体なぜで、何が原因でしょうか? 私の使っているパソコン、東芝dynabook Satellite T551/WTCD(型番:PT551TCDBFWW)との相性の問題でしょうか? 恐れ入りますが、どなたかお分かりなる方、ご回答いただければ幸いです。

  • ボタンとイベント

    Visual Basic 2008 Express Editionで、 ボタン1をクリックしたらイベント1が発生し、 もう一度ボタン1をクリックしたらイベント2が 発生するようにするには、どう書けばいいですか?

専門家に質問してみよう