How to create a hint for a single cell in a TDrawGrid or TDBGrid (Views: 703)
Problem/Question/Abstract: How can I make a hint for a single cell in a TDBGrid or TDrawGrid? I want to display any text in a grid cell even if it is not placed in the cell completely. Answer: Here's an example taken from a working app but simplified a little. OldHintRow and OldHintCol are private variables declared in TStosWin. They store the column and row for which the hint was shown previously. procedure TStosWin.MyDrawGrid1MouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer); var R, C: Integer; begin with MyDrawGrid1 do begin MouseToCell(X, Y, C, R); if (C = OldHintCol) and (R = OldHintRow) then exit; {Don't do anything if mouse is in the same cell} OldHintCol := C; OldHintRow := R; Hint := ' Your hint for column C and row R'; {Force the hint to redisplay} PostMessage(Handle, WM_MBUTTONDOWN, MK_LBUTTON, Dword((Y shl 16) + X)); end; end; |