Einzelnen Beitrag anzeigen

Benutzerbild von toms
toms
(CodeLib-Manager)

Registriert seit: 10. Jun 2002
4.648 Beiträge
 
Delphi XE Professional
 
#2

Re: Webbrowser: Combobox eintrag auswählen

  Alt 26. Feb 2009, 20:13
Hallo

Schau mal meinen Beitrag hier an.

Sollte auch so funktionieren:

Delphi-Quellcode:
(* uses MsHTML, Variants, ActiveX *)

procedure ChangeHTMLSelectElement(
  const SelectElement: IHTMLSelectElement; const Value: String);
const
  IID_NULL: TGUID = (
    D1:$00000000;D2:$0000;D3:$0000;D4:
      ($00,$00,$00,$00,$00,$00,$00,$00));
var
  DispParams: TDispParams;
  PDispOnChange: PDispatch;
  DispOnChange: IDispatch;
  ResultVar: Variant;
begin
  SelectElement.Value:= Value;
  DispOnChange:= SelectElement.OnChange;
  PDispOnChange:= @DispOnChange;
  DispParams.rgvarg:= nil;
  DispParams.rgdispidNamedArgs:= nil;
  DispParams.cArgs:= 0;
  DispParams.cNamedArgs:= 0;
  PDispOnChange.Invoke(DISPID_VALUE,
    IID_NULL, LOCALE_USER_DEFAULT, DISPATCH_METHOD,
    DispParams, PVariant(@ResultVar), nil, nil);
end;


OleVariant(DeinIHTMLElement).FireEvent('onchange') ;
oder
OleVariant(DeinIHTMLInputElement).FireEvent('onchange');
oder
OleVariant(DeinElement as IHTMLElement).FireEvent('onclick');
etc.
Thomas
  Mit Zitat antworten Zitat