Entwickler-Ecke

Delphi Language (Object-Pascal) / CLX - Wert von OleVariant überprüfen?


Raul3D - Sa 23.10.04 16:06
Titel: Wert von OleVariant überprüfen?
Hi,

ich will überprüfen, ob ein bestimmtes Element im TWebBrowser bereits geladen ist. Dazu benutze ich Browser.OleDocument.All.Item('name') um das Object zu bekommen. Allerdings bekomme ich mit dieser Funktion immer ein Element zurück, auch wenn es noch nicht geladen wude. Laut Delphi-Debugger ist der Wert dann zwar $00000000, aber da man OleVariants ja nicht mit "=" vergleichen kann, nützt das nicht viel.

Wie kann ich gucken ob wirklich ein Element zurückgegeben wurde (also z.B. $004132A5)? Ich habe es schon mit VarIsNull() probiert, das liefert aber immer False, auch wenn die OleVariant den Wert $00000000 hat.

Danke!


MartinPb - Sa 23.10.04 16:35

VarIsNull ist falsch, mit


Delphi-Quelltext
1:
if not VarIsEmpty(...) then ...                    


prüft man OleVariant nicht leer ist. Ist er nicht leer, dann hat er ein Wert.


Raul3D - So 24.10.04 13:24

Ja, VarIsEmpty hab ich auch über die Suchfunktion gefunden, leider liefert es immer False, auch wenn kein Element (also $00000000) zurückgegeben wurde.


Raul3D - So 24.10.04 14:03

Hab das Problem gelöst. Trotzdem danke, hatte einen anderen Fehler weiter oben :shock: