Announcement

Collapse
No announcement yet.

Rechtsbündige Anzeige in einem StringGrid

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Rechtsbündige Anzeige in einem StringGrid

    Hallo Delphi Freunde
    ich habe nirgendwo etwas gefunden,wie ich in einem StringGrid eine
    Anzeige rechtsbündig formatieren kann. Meine Programmzeilen lauten
    Wert2 := FloatToStrF(INT3[I],ffNumber,8,2);
    StringGrid.Cells[1,I] := Wert2;
    Für jede Hilfe danke ich im voraus und allen
    Frohe Weihnachten.

  • #2
    hi!

    Zeichne im OnDrawCell-Ereignis Deinen Text selbst. Dazu benutzt Du die Windows-Funktion DrawText. Diese kannst du auf Rechtsbündig zwingen. Alles andere ist Rechensache.

    nebenbei:

    Ein Stringgrid ist "nach Rechts" offen, (also können alle Strings unterschiedlich lang sein). Die Cell-Größe hat mit dem Inhalt nichts zu tun -> also musst Du den gewünschten Effekt selbst herstellen.

    Wenn Du einen Font verwendest, dessen Zeichen alle die gleiche Breite haben, kannst Du durch führende Leerzeichen den Effekt herstellen.

    Alles andere wird ein wenig komplizierter, denn dann mußt Du auf dem Canvas im OnDrawCell-Ereignis selbst zeichen, nachdem Du die Anfangsposition Deines Textes berechnet hast. Bei Fonts mit unterschiedlichen Zeichenbreiten muss Du also als erstes diese Breiten auslesen und dann für die in Deinem String gebrauchten die Längen addieren. Dann errechnest Du die Anfangsposition. Denn bei einer Formatierung,bei der die Kommata übereinanderstehen (darauf soll es wohl hinauslaufen), musst Du ja die Position des Kommas pixelgenau kennen, um die übereinanderstellen zu können.

    Ist doch eine nette Aufgabe für Weihnachten

    Bernhar

    Comment


    • #3
      Vielen Dank für Tips und Hinweise.

      Da nur ein Font verwendet wird, werde ich mit der
      Kunstruktion von Leerzeichen beschäftigen.

      Diete

      Comment


      • #4
        Hallo Dieter,<BR>
        Sieh' dir mal TStringAlignGrid unter http://www.hoerstemeier.com/grid_d.htm an.<BR>
        Gruss Thoma

        Comment

        Working...
        X