webbrowser加载框架网页
本人做了一个聊天室自动发言程序,大概原理就是用Webbrowser控件加载聊天室从而达到自动发言等功能. 现在问题是,如何判断聊天室加载完毕.网上有很多办法
办法1:// 计数器
int counter = 0 ;
// 添加事件响应函数
this .webBrowser.Navigated += new System.Windows.Forms.WebBrowserNavigatedEventHandler(webBrowser_Navigated);
this .webBrowser.DocumentCompleted += new System.Windows.Forms.WebBrowserDocumentCompletedEventHandler( this .webBrowser_DocumentCompleted);
// 事件响应函数
private void webBrowser_Navigated( object sender, WebBrowserNavigatedEventArgs e)
{
counter ++ ;
}
private void webBrowser_DocumentCompleted( object sender, WebBrowserDocumentCompletedEventArgs e)
{
counter -- ;
if ( 0 == counter)
{
// 加载完毕
}
}
通过实践证明,此方法仍不准确.
方法2
是在DocumentCompleted事件中判断e.Url和WebBrowser.Document.Url是否一致
如一致则表示初始页面加载完毕
同样,这个办法也不准确.
特别是加载iChat类型的聊天室时.
还有没有其它更准确的办法?求助!!
WindowsApplication2.rar
(768.98 KB)