三行代碼搞定天氣預報

三行代碼搞定天氣預報

作者:郭方明
完成日期:2007-11-22 version 1.0
聯繫信箱:[email protected]
注:轉載文章,請註明作者信息。
關鍵字:delphi,天氣預報,WebBrowser
前兩天在根客戶聊天的時候,偶爾談到在我們的軟件主界面上添加一個天氣預報的功能。
當時只是隨口說說,沒想到客戶認真了,一定要實現這個功能,沒辦法了,只有做出來了。
客戶哪所以的PC都是可以登錄Internet的,所以,我想直接找個有天氣預報的網站,用WebBrowser把頁面顯示出來就行了。
說幹就幹,做個demo先。
做之前先找網站,百度google了一下,找到一段代碼
<iframe src="http://weather.265.com/weather.htm" width="168" height="54" frameborder="no" border="0" marginwidth="0" marginheight="0" scrolling="no"></iframe>
這段代碼是嵌入網頁用的,我不需要後面的格式,只要url(http://weather.265.com/weather.htm)就可以了。
網頁找到了,開始動手:
1、新建一個項目,放一個WebBrowser,一個button
如圖0
2、在Button的Click事件寫如下代碼
   WebBrowser1.Navigate('http://weather.265.com/weather.htm');
 編譯運行界面如下:
 圖1
 功能倒是實現了,但不太美觀,有滾動條,邊框也很難看。
 3、想辦法去掉邊框和滾動條
 在WebBrowser1的DocumentComplete時間加入如下代碼:
    WebBrowser1.OleObject.document.body.scroll := 'no'; //不顯示滾動條
    WebBrowser1.OleObject.document.body.style.borderStyle := 'none'; //不顯示邊框
  編譯運行,界面如下:
   圖2
   嗯,不錯,只寫三行代碼就搞定了天氣預報。
   完整代碼如下:
procedure TForm1.Button1Click(Sender: TObject);
begin
  WebBrowser1.Navigate('http://weather.265.com/weather.htm');
end;

procedure TForm1.WebBrowser1DocumentComplete(Sender: TObject;
  const pDisp: IDispatch; var URL: OleVariant);
begin
  WebBrowser1.OleObject.document.body.scroll := 'no'; //不顯示滾動條
  WebBrowser1.OleObject.document.body.style.borderStyle := 'none'; //不顯示邊框
end;
  後記:剛開始考慮使用WebService來實現,查了一些資料後,發現,天氣預報的WebService竟然不是很多,
  於是想幹脆直接用頁面來算了。沒想到WebService提了這麼多年,還是沒能很好推廣開,不知是什麼原因。

  

發佈了43 篇原創文章 · 獲贊 7 · 訪問量 9萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章