diff --git a/source/childwin.dfm b/source/childwin.dfm index 60285449..4d5a7abe 100644 --- a/source/childwin.dfm +++ b/source/childwin.dfm @@ -975,6 +975,7 @@ object MDIChild: TMDIChild OnHeaderClick = DataGridHeaderClick OnKeyDown = GridKeyDown OnKeyUp = controlsKeyUp + OnMouseUp = DataGridMouseUp OnNewText = DataGridNewText Columns = <> end diff --git a/source/childwin.pas b/source/childwin.pas index 70ba8886..604af4ee 100644 --- a/source/childwin.pas +++ b/source/childwin.pas @@ -457,6 +457,8 @@ type NewHeight: Integer; var Resize: Boolean); procedure pnlQueryMemoCanResize(Sender: TObject; var NewWidth, NewHeight: Integer; var Resize: Boolean); + procedure DataGridMouseUp(Sender: TObject; Button: TMouseButton; + Shift: TShiftState; X, Y: Integer); private uptime : Integer; @@ -6679,4 +6681,18 @@ begin end; +procedure TMDIChild.DataGridMouseUp(Sender: TObject; Button: TMouseButton; + Shift: TShiftState; X, Y: Integer); +var + Grid: TVirtualStringTree; + Hit: THitInfo; +begin + // Detect mouse hit in grid whitespace and apply changes. + Grid := Sender as TVirtualStringTree; + Grid.GetHitTestInfoAt(X, Y, False, Hit); + if (Hit.HitNode = nil) or (Hit.HitColumn = NoColumn) or (Hit.HitColumn = InvalidColumn) then + DataGridPostUpdateOrInsert(Grid.FocusedNode); +end; + + end.