Question

Je reçois des questions de dessin en utilisant OnAfterItemPaint événement lorsque le défilement horizontal est effectué.

En fait ce que je veux réaliser est la fusion de l'effet des cellules sélectionnées, disons par exemple 1 texte pour la colonne 1 et 2, un autre texte pour la colonne 3 et 4, etc ... Jusqu'à présent, VT n'a pas de soutien pour la fusion de la colonne, de sorte que je dessiner manuellement.

Y at-il une solution de contournement ou un autre événement que je devrais utiliser à la place?

Utilisation: Delphi 7 + VirtualTreeview 4.8.5

Source de l'événement:

begin
  TargetCanvas.TextOut(ItemRect.Left+ VT1.OffsetX, ItemRect.Top,
    '1234567890ABCDEF1234567890ABCDEF1234567890ABCDEF');
end;

Avant de défilement:

texte alt http://a.imagehost.org/0869/screen1.gif

Après défilement (Déplacement vers la droite, puis vers la gauche):

texte alt http://a.imagehost.org/0645/screen2.gif

Autres conseils

Avez-vous essayé ceci:

TreeOptions.AutoOptions := TreeOptions.AutoOptions + [toAutoSpanColumns];

Il fait à peu près ce que vous avez besoin. Ils ne peut être question que vous ne pouvez pas spécifier quelles colonnes il est activé. Vous pouvez probablement contourner ce problème en limitation en définissant le celltext à un des espaces pour les colonnes que vous ne voulez pas étendre dans.

scroll top