• ベストアンサー

プログラムについて

今このようなプログラムを作っているのですが、わからなくて困っています。 Private Sub Command1_Click() Command1.Enabled = False 'タイマー無効 Text1.Text = GetSource() Command1.Enabled = True 'タイマー有効 Msg = "アドレスを入力して下さい" Title = "URL入力" Ret = InputBox(Msg, Title, "") End Sub Function GetSource() As String Dim strBuf As String Dim strURL As String strURL = "http://www.microsoft.com/japan/ms.htm" strBuf = Inet1.OpenURL(strURL) 'ファイル内容を取得 GetSource = strBuf End Function InputBoxにアドレスを書いてOKを押すと別ウィンドウでソースが表示されるプログラムを作りたいんです。お願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • yanmaa
  • ベストアンサー率45% (207/457)
回答No.2

別フォームを開くならShowメソッド 取り合えずこの程度ですか? Private Sub Command1_Click() Dim strUrl As String Dim strBuf As String Command1.Enabled = False strUrl = InputBox("URLを入力して下さい.") Command1.Enabled = True strBuf = Inet1.OpenURL(strUrl) Form2.Show Form2.Text1.Text = strBuf End Sub 構成はForm1がURLを聞く画面、Form2にテキストボックスだけでソース表示画面とします。 ヘルプを見ればわかるので各関数やメソッドについては説明を省略します。

mos21
質問者

お礼

ありがとうございました。あのー、それで次のプログラムを書いて動かしてみたんですが、キャンセルを押すとURLが不正です。って出ました。キャンセルか何も入力しなかった場合ウィンドウを閉じたいんですがどうすればいいでしょう。お願いします。 Private Sub Command1_Click() Dim strUrl As String Dim strBuf As String Command1.Enabled = False strUrl = InputBox("URLを入力して下さい.") Command1.Enabled = True strBuf = Inet1.OpenURL(strUrl) Form2.Show Form2.Text1.Text = strBuf End Sub Function Getsource() As String Dim strBuf As String Dim strUrl As String strBuf = Inet1.OpenURL(strUrl) 'ファイル内容を取得 Getsource = strBuf End Function

その他の回答 (3)

  • itohh
  • ベストアンサー率45% (210/459)
回答No.4

こんにちは。itohhといいます。 yanmaaさんの補足について、回答がなされていないようなので代わりにアドバイス します。 >キャンセルか何も入力しなかった場合ウィンドウを閉じたい このソースのままで行うのでしたら、 >strUrl = InputBox("URLを入力して下さい.") の後で If(Len(strUrl) = 0) Then Exit Function End If としてください。 MSDNライブラリーでInputBox関数を見て使い方を憶えましょう。

mos21
質問者

お礼

あ、ありがとうございました。アドバイスしていただいたプログラムでウィンドウを閉じることができました。ありがとうございました。

回答No.3

簡単な方法としては、 【別ウィンドウの起こし方】 1.フォームモジュールを新しく追加します。(Form2とします) 2.元のフォーム(Form1とします)からForm2.Showとすれば起こせます。 【ソースの表示のさせ方】 1.Form2にテキストボックス(Text2)でもラベル(Label2)でも、  文字を表示できるコントロールを貼り付けて起きます。 2.Form2.Text2.Text = "あいうえお"  とすればForm1から制御できます。  ⇒あんまりよい方法ではありませんが…。 ※Form2でPublicな関数を作りForm1からコールされると、  その関数内で自分自身(Form2)を表示する方がいいでしょう。  そしてForm2が所持しているText2にその関数が書き込む方向で。

mos21
質問者

お礼

ありがとうございます。新しくフォームを追加してやってみました。丁寧な説明ありがとうございました。

回答No.1

こちらとしては何がわからないのかが分かりません。 別ウィンドウの起こし方でしょうか? ソース表示のさせ方でしょうか? それともフローでしょうか?

mos21
質問者

お礼

すいません、知りたいのは別ウィンドウの起こし方とソースの表示のさせ方です。テキストボックスではなく別ウィンドウにソースを表示させるものなんですけど(^^;

関連するQ&A