Webブラウザーを、印刷・名前をつけてファイルに保存・その他を作るには?

タグの編集
投稿者 winvis  (学生) 投稿日時 2009/9/4 02:02:17
現在、ウェブブラウザーを作っているのですが
戻る・進む・更新・ホームまで、できたのですが
印刷・名前をつけてファイルに保存・IE・Firefoxのお気に入り読み込み・インターネットオプションの表示は、どうやるのでしょうか?
あと、Web browserに、Enableプロパティがありませんが、ブラウザを、無効にする方法はないのでしょうか?
投稿者 まだまだ  (中学生) 投稿日時 2009/9/4 02:13:02
名前を付けて保存ってURLだけを保存するのですか?それともソースを保存するですか?
印刷なら
WebBrowser1.Print()
でできますよ。
投稿者 winvis  (社会人) 投稿日時 2009/9/4 02:20:03
説明が足りず、すいません。
名前をつけた保存は、HTMLを、ダウンロードする機能を、想像してました(IEとかにある名前をつけてページを保存)
投稿者 魔界の仮面弁士  (社会人) 投稿日時 2009/9/4 02:28:41
> 現在、ウェブブラウザーを作っているのですが
それは、WebBrowser コントロールを利用した物なのでしょうか?
それとも、独自に HTML を解釈・表示する機能を作りこんでいるのでしょうか?

とりあえず、前者だと仮定して回答します。
また、VB のバージョンが書かれていないので、現行バージョンである VB2008 と仮定します。
(VB.NET 2003 や VB6 の場合は、記述すべきコードが異なります)


> 戻る・進む・更新・ホームまで、できたのですが
それらは、WebBrowser でいえば、
 If WebBrowser1.CanGoBack Then WebBrowser1.GoBack()
 If WebBrowser1.CanGoForward Then WebBrowser1.GoForward()
 WebBrowser1.Stop()
 WebBrowser1.Refresh( 更新オプション )
 WebBrowser1.GoHome()
などでしょうか。(それと、CanGoBackChanged イベント等)


> 印刷
WebBrowser1.Print()

> 名前をつけてファイルに保存
WebBrowser1.Document.ExecCommand("SaveAs", True, Type.Missing)

> IE
……?

> Firefoxのお気に入り読み込み
Firefox を使う機会が無いので、調べたことがありません。

> インターネットオプションの表示
Imports System.Runtime.InteropServices
Public Class Form1
    Private Declare Function LaunchConnectionDialog Lib "inetcpl.cpl" _
        (ByVal hWnd As IntPtr) As <MarshalAs(UnmanagedType.Bool)> Boolean
    Private Declare Function LaunchInternetControlPanel Lib "inetcpl.cpl" _
        (ByVal hWnd As IntPtr) As <MarshalAs(UnmanagedType.Bool)> Boolean
    Private Declare Function LaunchPrivacyDialog Lib "inetcpl.cpl" _
        (ByVal hWnd As IntPtr) As <MarshalAs(UnmanagedType.Bool)> Boolean
    Private Declare Function LaunchSecurityDialog Lib "inetcpl.cpl" _
        (ByVal hWnd As IntPtr) As <MarshalAs(UnmanagedType.Bool)> Boolean
    Private Sub Button1_Click(ByVal sender As ObjectByVal e As EventArgs) Handles Button1.Click
        LaunchConnectionDialog(Me.Handle)
    End Sub
    Private Sub Button2_Click(ByVal sender As ObjectByVal e As EventArgs) Handles Button2.Click
        LaunchInternetControlPanel(Me.Handle)
    End Sub
    Private Sub Button3_Click(ByVal sender As ObjectByVal e As EventArgs) Handles Button3.Click
        LaunchPrivacyDialog(Me.Handle)
    End Sub
    Private Sub Button4_Click(ByVal sender As ObjectByVal e As EventArgs) Handles Button4.Click
        LaunchSecurityDialog(Me.Handle)
    End Sub
End Class
投稿者 winvis  (社会人) 投稿日時 2009/9/4 03:42:19
すいませんorz
魔界の仮面弁士の仮定通りVB2008 expressでWebBrowserコントロールを、使ってます
> IE
>……?
すいません、書き方を間違えましたorz
IEかFirefoxのお気に入り読み込み
印刷プレビューって、WebBrowser1.Print()では、出ないんですね・・・
投稿者 魔界の仮面弁士  (社会人) 投稿日時 2009/9/4 04:21:30
> http://rucio.groupsite.jp/commu/ThreadDetail.aspx?ThreadId=9297
> brv「さん」のコードを

> http://rucio.groupsite.jp/commu/ThreadDetail.aspx?ThreadId=9321
> 魔界の仮面弁士「」の仮定通り

(^_^;)


> 印刷プレビューって、WebBrowser1.Print()では、出ないんですね・・・ 
「印刷」ではなく「印刷プレビュー」が必要だったというわけですね。
であれば、このように書けば OK です。

WebBrowser1.ShowPrintPreviewDialog()

WebBrowser のメンバにどのようなものが用意されているか、
再度ヘルプを確認しておかれると良いでしょう。
投稿者 winvis  (学生) 投稿日時 2009/9/4 04:58:58
> http://rucio.groupsite.jp/commu/ThreadDetail.aspx?ThreadId=9321
> 魔界の仮面弁士「」の仮定通り
ごめんなさいorz
本当にごめんなさいorz
投稿者 winvis  (学生) 投稿日時 2009/9/4 05:00:07
皆さん、ありがとうございます
あと、魔界の仮面弁士さん、本当にごめんなさい
投稿者 wii  (中学生) 投稿日時 2009/9/5 20:36:09
Webbrowserのメンバに、Enabledプロパティはありますよ。

VB中学校初級講座第17回にもあるように、フォームに表示されるタイプのコントロール、
つまりControlクラスを継承したコントロールには必ずEnabledプロパティがあります。