Ò׽ؽØÍ¼Èí¼þ¡¢µ¥Îļþ¡¢Ãâ°²×°¡¢´¿ÂÌÉ«¡¢½ö160KB

WebBrowser×é¼þºÍMSHTML ÔÚDelphiÖеÄʹÓÃ

 WebBrowser×é¼þºÍMSHTML ÔÚDelphiÖеÄʹÓÃ
ÓÉÓÚÏîÄ¿ÐèÒª£¬½üÀ´Ñо¿ÁËÒ»ÏÂWebBrowser×é¼þºÍMSHTML ÔÚDelphiÖеÄʹÓÃ,ÕûÀíÁËÒ»ÏÂÕâ¶Îʱ¼äÑо¿µÄ½á¹û,дÏÂÀ´Ò»ÊÇ·½±ã´ó¼Ò²éÔÄ,¶þÒ²¿ÉÒÔ¼ÓÉîÎÒ×Ô¼ºµÄ¼ÇÒä.Ï£ÍûÄܶԴó¼ÒÓÐËù°ïÖú… …,ͬʱ,Èç¹ûÓиüºÃµÄ´¦Àí·½Ê½»òÕßÎÒûÓÐÌáµ½µÄÎÊÌâ,Çë´ó¼ÒÒ²¸æËßÎÒŶ, ÔÛÃÇÒ»¿é½ø²½… ...,ÆäÖÐÒ»²¿·ÖÊÇÎÒ´ÓÍøÂçÖÐËѼ¯µÄ×ÊÁÏ,ллÄÇЩÐÖµÜÃÇ… …
MSHTML°ÑHTMLÒ³ÃæÖеÄÔªËØ·â×°³ÉÁËIHTMLInputElement¡¢ IHTMLInputButtonElement¡¢IHTMLInputTextElement¡¢IHTMLTextAreaElement¡¢IHTMLTitleElement¡¢IHTMLFormElementµÈµÈ×é¼þ½Ó¿Ú¡£
ÔÚ³ÌÐòÖпÉÒÔͨ¹ýMSHTMLÌṩµÄIHTMLDocument2½Ó¿ÚµÃµ½Õû¸öDocument¶ÔÏó£¬IHTMLElementCollection½Ó¿ÚµÃµ½ËùÓÐÒ³ÃæÔªËØµÄ¼¯ºÏ,ͨ¹ý¸Ã½Ó¿ÚµÄItem·½·¨¿ÉÒԵõ½¾ßÌåµÄij¸ö×é¼þ,È»ºóÉèÖúͶÁÈ¡¸Ã×é¼þµÄÊôÐÔÖµ¡£
ÏÂÃæÊÇһЩ³£Óù¦ÄܵÄÊÂÀý´úÂë.
1£® ´ò¿ªÄ³¸öÒ³Ãæ£º
web.Navigate(ExtractFilePath(Application.ExeName) + 'Template/login.html');
2£® È¡³öÒ³ÃæÖÐij¸öHtmlElementµÄValueÊôÐÔÖµ£º
function GetValueByElementName(web: TWebBrowser; elementName: string; index: integer): string;
begin
result := (((web.Document as IHTMLDocument2).body.all as
IHTMLElementCollection).item(elementName, index) as IHTMLInputElement
).value
end;
3£® ¸øHtmlElementÉèÖÃValueÊôÐÔ
procedure SetValueTextAreaName(web: TWebBrowser; elementName, value: string;index: integer);
begin
(((web.Document as IHTMLDocument2).body.all as
IHTMLElementCollection).item(elementName, index) as IHTMLTextAreaElement
).value := value;
end;
4£® ÅжÏÒ³ÃæÖ´Ðнá¹ûÊÇ·ñ³É¹¦
ÒòΪWebÓ¦ÓÃÖÐÈç¹û³ö´íµÄÒ»°ãÊDzÉÓôíÎóÒ³ÃæµÄ·½Ê½³ÊÏÖ¸ø×îÖÕÓû§,ËùÒÔÎÒÃÇÒ²ÎÞ·¨×¥µ½Http´íÎó,Ö»ÄÜͨ¹ýÔÚwebBeforeNavigate2ʼþÖн«URL²ÎÊý¼Ç¼µ½È«¾Ö±äÁ¿ÖÐ, È»ºóÔÚwebDocumentCompleteʼþÖиù¾ÝURL²ÎÊýºÍÈ«¾Ö±äÁ¿ÖеÄURL²ÎÊýÀ´ÅжÏÖ´Ðнá¹ûÊÇ·ñÕýÈ·.µ±È»,ÕâÑùÐèÒª½«Ò³ÃæµØÖ·±àÂëµ½´úÂëÖÐ,½µµÍÁËÁé»îÐÔ,µ«ÊÇÕâÒ²ÊÇÎÒÄÜÏëµ½µÄΨһµÄ·½·¨,Èç¹û´ó¼ÒÓÐʲôºÃµÄ·½·¨,Çë¸æËßÎÒŶ.
5£® ÆÁ±ÎÊó±êÓÒ¼üºÍijЩ¿ì½Ý¼ü
±¾¹¦ÄÜÐèÒªÔÚwebBrowserµÄ´°¿ÚÖмÓÈëApplicationEvents×é¼þ,ÉèÖÃËüµÄOnMessageʼþ´úÂëÈçϼ´¿É.
procedure TwebAdapterForm.ApplicationEvents1


Ïà¹ØÎĵµ£º

delphi֮ģÄâµã»÷ÍøÒ³Öеİ´Å¥

unit Unit1;   
  
interface  
  
uses  
   Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,   
   Dialogs, StdCtrls, OleCtrls, SHDocVw;   
  
t ......

¸øDelphi¿Ø¼þÉèÒ»¸öͼ±ê

·½·¨Ò»£º
¿Ø¼þÀà½Ð×ö   TABC,ÎļþÃû½Ð abc.pas ÄÇôн¨Á¢Ò»¸öÎļþ½Ð
abc.rc
ÀïÃæÄÚÈÝÊÇ
TABC Bitmap icon.bmp
icon.bmp ¾ÍÊÇͼƬÎļþÃû£¬²»Òª³¬¹ý256É«£¬24x24
È»ºóÔÚÃüÁîÐÐÏÂÖ´ÐÐ brcc32 abc.rc¾Í»áÉú³É abc.res
¸ÄÃûΪ abc.dcr
´ò¿ªÄã¿Ø¼þµÄ dpkÎļþ£¬ ¼ÓÉÏ {$R ABC.DCR}
ÖØÐ±àÒë¾Í¿ÉÒÔÁË¡£
±ã½Ý·½ ......

delphiÖÐWEBBrowserÍøÒ³JSº¯Êýµ÷ÓÃdelphiº¯Êý

1.1¡¢¼¤»î
var doc,url:Olevariant ;
begin
url:='about:blank' ;//»òÕßÒ»¸öÓÐʵ¼ÊÒâÒåµÄurl
WebBrowser1.Navigate2(url);//ÕâÑù¾Í¼¤»îÁË£¡
end;
1.2¡¢Ð´HTML´úÂë
var doc:Olevariant ;
s:string;
begin
doc:=WebBrowser1.Document;
doc.clear;//Çå³þÔµÓÉÄÚÈÝ£¬ÒÔ±ãдÐÂÄÚÈÝ
doc.write('<html>');
//ÆäË ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ