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
Ïà¹ØÎĵµ£º
ÒýÓÃ×Ô£ºhttp://develop.csai.cn/delphi/NO000001.htm
×Ô¶¯Íê³É¼ò½é
¡¡¡¡´ó¼ÒÒ»¶¨¶¼·Ç³£ÊìϤIEä¯ÀÀÆ÷µÄµØÖ·ÊäÈë±à¼¿ò£¬ËüÌṩÁË×Ô¶¯Íê³ÉµÄ¹¦ÄÜ¡£×Ô¶¯Íê³É£¨Auto Complete£©¹¦Äܼò»¯Á˱༿òµÄÊäÈ빦ÄÜ£¬Ëü¿ÉÒÔ¸ù¾ÝÒѾÊäÈëµÄ²¿·Ö×Ö·û´®½øÐÐÔ¤²âºÍÆ¥Å䡣ͼ2.7µÄÀý×Ó£¬ÑÝʾÁË×Ô¶¯Íê³É¿ÉÒÔÒÀ¾ÝÊäÈëµÄ“pro”£¬¸ø³ ......
procedure TForm1.Button1Click(Sender: TObject);
Var
Num: Integer;
Begin
Try
Num:=StrToInt(Edit1.Text);
Edit2.Text:=IntToStr(Num*Num);
Except
On EConvertError Do ShowMessage(Edit1.Text+'ÎÞ·¨×ª³ÉÕûÊý!');
......
Ò»¡¢KOLÊÇʲô?KOLÄÜ×öʲô? MCKÊÇʲô?MCKÄÜ×öʲô?
KOLÊÇÒ»Ì×¶ÔÏó¿â£¬Ãâ·Ñ¶øÇÒ¿ª·ÅÔ´´úÂ룬´ó¼Ò¿ÉÒÔhttp://www.kolmck.net/È¥ÏÂÔØµ½
Ëü¡£ËüÄܹ»Ê¹Delphi±à³ö³ß´ç·Ç³£Ð¡µÄ32λWindowsͼÐÎÓû§½çÃæµÄÓ¦ÓóÌÐò¡£
Ŀǰ֧³ÖµÄDelphi°æ:Delphi6,Delphi5,Delphi4,Delphi3ºÍDelphi2¡£
ʹÓÃKOLÔÚD2-D5ÖбàдµÄ×îСͼÐνçÃæ³ÌÐò ......
1) Error loading midas.dll ûÓÐ×¢²ámidas.dll ÔËÐÐRegSver32.exe midas.dll
2)Result := GetProcAddress(FGDIPlusLibrary, PChar(ProcName));±àÒë ³öÏÖÕâÑùµÄÎÊÌ⣬Ӧ¸ÃÊÇÉèÖ÷½ÃæµÄÎÊÌ⣬Project->Options->Complier->Hugestrings ¹³ÉϾÍokÁË£¡
3) TCheckListBoxÓиöitemEnable ......
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, OleCtrls, SHDocVw;
t ......