Delphi TWebBrowser İnternet Sitesinden Listeden Seçilen Değerin Alınması
Delphi TWebBrowser İnternet Sitesinden Listeden Seçilen Değerin Alınması:
//Uses'a MSHTML ekleyin
//Forma TWebBrowser ekleyin
//Forma 2 buton ekleyin
//Forma editbox ekleyin
Aşağıdaki sitedeki ilgili elemanı bulması için gereken fonksiyonu ekleyelim.
function IsSelectElement(eleElement: IHTMLElement): Boolean;
var
selElement: IHTMLSelectElement;
begin
Result := False;
try
selElement := eleElement as IHTMLSelectElement;
except
Exit;
end;
Result := True;
end;
ListBox alanında veri alabilmek için ekleyeceğimiz fonksiyon.
function GetListBoxOption(Web1: TWebBrowser;
strListBoxName: string;
intInstance: Integer): string;
var
eleChild: IHTMLElement;
eleElement: IHTMLElement;
colGrandParents: IHTMLElementCollection;
colParents: IHTMLElementCollection;
selElement: IHTMLSelectElement;
intCount: Integer;
intG: Integer;
intGMax: Integer;
intSelected: Integer;
Document: IHTMLDocument2;
begin
Result := '';
intCount := -1;
//Magic declarations
Document := Web1.Document as IHTMLDocument2;
if Document = nil then Exit;
colGrandParents := Document.All;
if colGrandParents = nil then Exit;
intGMax := colGrandParents.Length - 1;
for intG := 0 to intGMax do
begin
eleElement := colGrandParents.Item(intG, '') as IHTMLElement;
if IsSelectElement(eleElement) then
begin
selElement := eleElement as IHTMLSelectElement;
if selElement.Name = strListBoxName then
begin
//Found a list box with the correct name.
Inc(intCount);
if intCount = intInstance then
begin
//Found the instance with the correct name.
intSelected := selElement.selectedIndex;
colParents := eleElement.children as IHTMLElementCollection;
eleChild := colParents.Item(intSelected, '') as IHTMLElement;
Result := eleChild.InnerText;
end;
end;
end;
end;
end;
WebBrowser'a yüklenecek olan değer alacağımız sitenin adresini girelim.
procedure TForm1.Button1Click(Sender: TObject);
begin
WebBrowser1.Navigate('http://www.swissdelphicenter.ch/torry');
end;
Ve son olarak sitedeki ilgili seçimi Edit1 alanına ekliyoruz.
procedure TForm1.Button2Click(Sender: TObject);
begin
Edit1.Text := GetListBoxOption(WebBrowser1, 'select', 0);
end;
Yorumlarınız bizim için değerlidir. Konu altına yorum bırakabilirsiniz. Teşekkürler.
Daha fazla Delphi Çözümleri İçin tıklayın DELPHİ BLOG
Daha fazla Delphi Kaynak Kod ve Proje Örnekleri için tıklayın DELPHİ KAYNAK KODLARI
English
Türkçe
German