Questione : Allineamento variabile di Delfi

Ho un allineamento variabile di stringa a Delfi. Come posso controllare che cosa stima è stato messo nello showmesage di allineamento cioè o in un certo controllo visivo? class= del

Risposta : Allineamento variabile di Delfi

Uso queste funzioni pratiche:

Varietà MyVar: Variante;

cominciare
 MyVar: =… // fa un certo inizio

 ShowMessageFmt ('MyVar è di tipo %s ed è il valore è “#13#10'% la s„,
    [VariantTypeName (MyVar), VariantAsString (MyVar)]);
estremità;
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
44:
45:
46:
47:
48:
49:
50:
51:
52:
53:
54:
55:
56:
57:
58:
59:
60:
61:
62:
63:
64:
65:
66:
67:
68:
69:
70:
71:
72:
73:
74:
75:
76:
77:
78:
79:
80:
funzione VariantBasicTypeName (varVar: Variante): Stringa;
varietà
  basicType  : Numero intero;
cominciare
  basicType: = VarType (varVar) e VarTypeMask;
  basicType di caso di
    varEmpty     : Risultato: = “svuotare„;
    varNull      : Risultato: = “posizione di segnale minimo„;
    varSmallInt  : Risultato: = “SmallInt„;
    varInteger   : Risultato: = “numero intero„;
    varSingle    : Risultato: = “scegliere„;
    varDouble    : Risultato: = “doppio„;
    varCurrency  : Risultato: = “valuta„;
    varDate      : Risultato: = “data„;
    varOleStr    : Risultato: = “OleStr„;
    varDispatch  : Risultato: = “spedizione„;
    varError     : Risultato: = “errore„;
    varBoolean   : Risultato: = “booleano„;
    varVariant   : Risultato: = “variante„;
    varUnknown   : Risultato: = “sconosciuto„;
    varByte      : Risultato: = “byte„;
{$ifdef VER140}
    varWord      : Risultato: = “parola„;
    varLongWord  : Risultato: = “LongWord„;
    varInt64     : Risultato: = “Int64„;
{$endif}    
    varStrArg    : Risultato: = “StrArg„;
    varString    : Risultato: = “stringa„;
    varAny       : Risultato: = “c'è ne„;
    varTypeMask  : Risultato: = “TypeMask„;
    Risultato altro: = disposizione (“abitudine (%d)„, [basicType]);
  estremità;
estremità;

funzione VariantTypeName (varVar: Variante): Stringa;
varietà
  ExtType, i  : Numero intero;
cominciare
 ExtType: = VarType (varVar);
 Risultato: =VariantBasicTypeName (varVar);
 se (ExtType e varArray) >0 allora
  cominciare
   Risultato: =Result+'[';
   per la i: =1 a VarArrayDimCount (varVar) risultano: =Result+Format (“%d,„, [VarArrayHighBound (varVar, i) - VarArrayLowBound (varVar, i)+1]);
   Risultato [lunghezza (risultato)]: = '] ';
  estremità;
 se (ExtType e varByRef) >0 allora risultano: = ' @ ' +Result;
estremità;

funzione VariantAsString (varVar: Variante): Stringa;
Varietà
// L: TStringList;
 basicType, i, J, fioco: Numero intero;
cominciare
 basicType: = VarType (varVar) e VarTypeMask;
 se VarIsArray (varVar) allora
  cominciare
   Oscurar: =VarArrayDimCount (varVar);
   se Dim>2 allora
    cominciare
     Risultato: = ' allineamento '+VariantTypeName (varVar);
     Uscita;
    estremità;
   Risultato: = ' [';
   se Dim=1
    Allora per la i: =VarArrayLowBound (varVar, 1) a VarArrayHighBound (varVar, 1) risulta: =Result+VariantAsString (varVar [i]) + ', '
    Altrimenti per la i: =VarArrayLowBound (varVar, 1) a VarArrayHighBound (varVar, 1) fare
     cominciare
      Risultato: =Result+#13#10  [';
      per J: =VarArrayLowBound (varVar, 2) a VarArrayHighBound (varVar, 2) risulta: =Result+VariantAsString (varVar [i, J]) + ', ';
      Risultato [lunghezza (risultato)]: = '] ';
      Risultato: =Result+, ';
     estremità;
   Risultato [lunghezza (risultato)]: = '] ';
  estremità altrimenti
  cominciare
   se VarIsEmpty (varVar) allora risulta: = ' (vuoto) 'altrimenti
   se VarIsNull (varVar) allora risulta: = ' (posizione di segnale minimo) 'risultato altro: =VarToStr (varVar);
  estremità;
estremità;
Altre soluzioni  
 
programming4us programming4us