Announcement

Collapse
No announcement yet.

Verbesserung der TStringGrid-Komponente

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

  • Verbesserung der TStringGrid-Komponente

    Hallo,

    habe meine eigene TMyStringGrid-Komponente mit Sortierfunktion geschrieben. Die Sortierung klappt gut.

    Nun möchte ich das Klicken der Maus auf die Kopfzeile des Grids dazu benutzen, die zu sortierende Spalte auszuwählen. Das Ereignis OnSelectCell wird aber offensichtlich nur ausgelöst, wenn eine nicht fixe Zeile/Spalte angeklickt wird.

    Wie kann ich das gewünschte realisieren?

  • #2
    Habe selbst herausgefunden, wie ich auf das Anklicken der Kopfzeile die Spalte ermitteln kann (siehe unten), schön wäre es jetzt noch, wenn ich in der Kopfzeile ein Symbol platzieren könnte, das neben der ausgewählten Spalte auch die Sortierreihenfolge anzeigt.

    Hat da jemand einen Tip.

    <pre>
    procedure TfrmMain.StringGrid1MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
    var
    CellHit: TGridCoord;
    begin
    CellHit := StringGrid1.MouseCoord(X, Y);
    if (CellHit.Y = 0) then
    ShowMessage('Spalte ' + IntToStr(CellHit.X) + ' ausgewählt');
    end;
    </PRE>

    Gruß
    MR

    Comment


    • #3
      Hallo Reinhold<br>
      such hier im Forum mal nach OnDrawCell.<br>
      Da wirst Du sicherlich genügend Beispiel finden<br>
      <br>
      Jens Schumann<br&gt

      Comment

      Working...
      X