funkcja VariantBasicTypeName (varVar: Wariant): Sznurek;
var
basicType : Integer;
zaczynać
basicType: = VarType (varVar) i VarTypeMask;
skrzynka basicType
varEmpty : Rezultat: = "Opróżniać";
varNull : Rezultat: = "Nieobowiązujący";
varSmallInt : Rezultat: = "SmallInt";
varInteger : Rezultat: = "Integer";
varSingle : Rezultat: = "Przerzedzać";
varDouble : Rezultat: = "Kopia";
varCurrency : Rezultat: = "Waluta";
varDate : Rezultat: = "Data";
varOleStr : Rezultat: = "OleStr";
varDispatch : Rezultat: = "Ekspedycja";
varError : Rezultat: = "Błąd";
varBoolean : Rezultat: = "Boolowski";
varVariant : Rezultat: = "Wariant";
varUnknown : Rezultat: = "Nieznane";
varByte : Rezultat: = "Bajt";
{$ifdef VER140}
varWord : Rezultat: = "Słowo";
varLongWord : Rezultat: = "LongWord";
varInt64 : Rezultat: = "Int64";
{$endif}
varStrArg : Rezultat: = "StrArg";
varString : Rezultat: = "Sznurek";
varAny : Rezultat: = "Żadny";
varTypeMask : Rezultat: = "TypeMask";
Inny Rezultat: = Format ("Zwyczaj (%d)", [basicType]);
końcówka;
końcówka;
funkcja VariantTypeName (varVar: Wariant): Sznurek;
var
ExtType, i : Integer;
zaczynać
ExtType: = VarType (varVar);
Rezultat: =VariantBasicTypeName (varVar);
jeżeli (ExtType I varArray) >0 Wtedy
zaczynać
Rezultat: =Result+'[';
dla i: =1 VarArrayDimCount (varVar) Wynikać: =Result+Format ("%d,", [VarArrayHighBound (varVar, i) - VarArrayLowBound (varVar, i) +1]);
Rezultat [Długość (Rezultat)]: = '] ';
końcówka;
jeżeli (ExtType I varByRef) >0 Wtedy Wynikać: = ' @ ' +Result;
końcówka;
funkcja VariantAsString (varVar: Wariant): Sznurek;
Var
// L: TStringList;
basicType, i, j, Ciemnawy: Integer;
zaczynać
basicType: = VarType (varVar) i VarTypeMask;
jeżeli VarIsArray (varVar) wtedy
zaczynać
Ćmić: =VarArrayDimCount (varVar);
jeżeli Dim>2 Wtedy
zaczynać
Rezultat: = ' Szyk '+VariantTypeName (varVar);
Wyjście;
końcówka;
Rezultat: = ' [';
jeżeli Dim=1
Wtedy dla i: =VarArrayLowBound (varVar, 1) VarArrayHighBound (varVar, 1) Wynikać: =Result+VariantAsString (varVar [i]) + ', '
Inny dla i: =VarArrayLowBound (varVar, 1) VarArrayHighBound (varVar, 1)
zaczynać
Rezultat: =Result+#13#10' [';
dla j: =VarArrayLowBound (varVar, 2) VarArrayHighBound (varVar, 2) Wynikać: =Result+VariantAsString (varVar [i, j]) + ', ';
Rezultat [Długość (Rezultat)]: = '] ';
Rezultat: =Result+', ';
końcówka;
Rezultat [Długość (Rezultat)]: = '] ';
końcówka inny
zaczynać
jeżeli VarIsEmpty (varVar) Wtedy Wynikać: = ' (Opróżniać) 'Inny
jeżeli VarIsNull (varVar) Wtedy Wynikać: = ' (Nieobowiązujący) 'Inny Rezultat: =VarToStr (varVar);
końcówka;
końcówka;
|