2007/09/07(Fri) 19:13:39 編集(投稿者)
WebBrowserに一度読み込んで幅を取得するのがよいと思います。
しかし,フレームを使っている場合など,幅が取得できないWebページもあります。
また,取得までかなり時間がかかります。
Public Class Form1
Dim WithEvents Browser As New WebBrowser
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Me.Controls.Add(Me.Browser)
Me.Browser.Dock = DockStyle.Fill
Me.Browser.Navigate("http://www.yahoo.co.jp")
End Sub
Private Sub Browser_DocumentCompleted(ByVal sender As Object, ByVal e As System.Windows.Forms.WebBrowserDocumentCompletedEventArgs) Handles Browser.DocumentCompleted
MessageBox.Show("幅=" & DirectCast(sender, WebBrowser).Document.Body.ScrollRectangle.Width)
Me.Browser.ScrollBarsEnabled = False
Me.ClientSize = New Size(Me.Browser.Document.Body.ScrollRectangle.Width, Me.ClientSize.Height)
End Sub
End Class
WebBrowserコントロールを表示したくない場合
Public Class Form1
Dim WithEvents Browser As New WebBrowser
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Me.Browser.Navigate("http://www.yahoo.co.jp")
End Sub
Private Sub Browser_DocumentCompleted(ByVal sender As Object, ByVal e As System.Windows.Forms.WebBrowserDocumentCompletedEventArgs) Handles Browser.DocumentCompleted
MessageBox.Show("幅=" & DirectCast(sender, WebBrowser).Document.Body.ScrollRectangle.Width)
End Sub
End Class
追記:ごめんなさい。C#でしたね。