Zellenbestimmung in StringGrid mit Popup??



  • Hallo,

    ich habe ein StringGrid und ein damit verbundenes PopupMenü. Wenn ich jetzt das Popup aufrufe, soll die angeklickte Zelle ihren Inhalt ändern.
    Aber woher bekomme ich die Koordinaten für die angeklickte Zelle in der Popup-Funktion?

    Gruß Michel



  • indem du das mit derm Popup-Menü verbundene StringGrid ausliest (PopupMenu -> PopupComponent) und dort Col und Row abfragst



  • Aber Col und Row sind keine Member von PopupComponent !



  • Das habe ich auch nie behauptet. Beides sind Member von TStringGrid, also solltest du PopupComponent als StringGrid casten und dann auf die beiden Eigenschaften zugreifen.

    Schau auch mal in den FAQ unter "Allgemein: Programmiertipps" -> "dynamic_cast vs. standard_cast".



  • Hallo,

    Es geht auch so

    int acol, arow; // Variablen wo Spalten- und Zeilenposition reinkommen soll
    TPoint globpoint = Mouse->CursorPos; // Hole globale Position des Mauscursors
    TPoint locpoint = ScreenToClient(globpoint); // Rechne globale Position zu lokaler (bezüglich Stringgrid) Position um
    MouseToCell(locpoint.x, locpoint.y, acol, arow); // Bestimme Zeilen- und Spaltennummer aus lokaler Position
    

Anmelden zum Antworten