Chciałbym wykryć moment w którym StringGrid.EditorMode ustawia się na False. Edytuję sobie komórkę, a następnie naciskam enter, strzałkę w dół, tabulator czy też np. klikam sobie gdzie indziej kursorem myszy - w tych przypadkach StrigGrid.EditorMode ustawia się na False, ale jak to wychwycić?
0
0
Może użyj timera?
0
Też o tym myślałem, ale może jest jakieś bardziej "profesjonalny" sposób?
0
Może zrobić komponent dziedziczący po stringgridzie, i dołożyć mu OnEditorModeChange. Trzeba by też zrobić nowego setera i getera dla proprty editormode.
Kiedyś miałem taką potrzebę, ale mi się pisać komponentu nie chciało - wiec obsługiwałem bodajże kilka zdarzeń aby to wyłapać (OnExit, OnSelectCell, OnChange czy jakoś tak).
0
proponuje obsługę 2 zdarzeń:
procedure TForm1.StringGrid1SetEditText(Sender: TObject; ACol,
ARow: Integer; const Value: String);
begin
if not StringGrid1.EditorMode then beep;
end;
procedure TForm1.StringGrid1SelectCell(Sender: TObject; ACol,
ARow: Integer; var CanSelect: Boolean);
begin
if StringGrid1.EditorMode then beep;
end;
0
Aleś strzelił grzanke