![]() |
TitleClick & DblClick bei DBGrid
Hallo zusammen,
ich versuche schon seit längerem herauszufinden, wie man abfangen kann, dass wenn in einem TDBGrid ein Doppelklick in der Titelleiste ausgeführt wird, die Funktionen für einen Doppelklick nicht mehr wirksam sind. Habe hier schon gesucht, aber keine richtige Lösung gefunden. Habe schon folgendes probiert:
Delphi-Quellcode:
...aber hier komme ich nie auf 0.
procedure TForm.DBgridDblClick(Sender: TObject);
var gc : TGridCoord; p : TPoint; begin p := ScreenToClient(Mouse.CursorPos); gc := DBgrid.MouseCoord(p.X, p.Y); if (gc.X > 0) and (gc.Y > 0) then // Tu was end; Danke & Gruß, Moony |
Re: TitleClick & DblClick bei DBGrid
Wie meinst du das? dass während der Abarbeiteung keine neue Events getriggert werden?
|
Re: TitleClick & DblClick bei DBGrid
Nein. Ich habe ein DBGrid, in welches eine Datenmenge aus der Datenbank geladen ist. Wenn ich ein Doppelklick auf einen Datensatz ausführe, dann soll etwas mit den Daten gemacht werden. Mache ich aber einen Doppelklick auf die Titelleiste des DBGrids, dann darf nichts mit der Datenmenge gemacht werden.
|
Re: TitleClick & DblClick bei DBGrid
Hast du mal debuggt??? Und geschaut, welche MousePos der rausgibt???
Vieleicht musst du die Top und Left abzählen oder machs so
Delphi-Quellcode:
Vieleicht gehts dann
var X1, X2 : Integer
// bei MouseMove von Grid X1 := X; //von MousePos bei Grid Y1 := Y; procedure TForm.DBgridDblClick(Sender: TObject); var gc : TGridCoord; p : TPoint; begin p := Point(x1,Y1); gc := DBgrid.MouseCoord(p.X, p.Y); if (gc.X > 0) and (gc.Y > 0) then // Tu was end; |
Re: TitleClick & DblClick bei DBGrid
So, ich habe jetzt folgende Tests gemacht:
1.
Delphi-Quellcode:
-> Doppelklick auf die Titelleiste in der ersten Spalte des Grids ergibt
p := ScreenToClient(Mouse.CursorPos);
Delphi-Quellcode:
-> Doppelklick auf den 2. Datensatz in der ersten Spalte des Grids ergibt
gc.x = 1
gc.y = 3
Delphi-Quellcode:
2.
gc.x = 1
gc.y = 6
Delphi-Quellcode:
-> Doppelklick auf die Titelleiste in der ersten Spalte des Grids ergibt
p := Point(myX, myY);
Delphi-Quellcode:
-> Doppelklick auf den 2. Datensatz in der ersten Spalte des Grids ergibt
gc.x = 1
gc.y = 0
Delphi-Quellcode:
gc.x = 1
gc.y = 3 |
Re: TitleClick & DblClick bei DBGrid
Hallo,
nach langem rumprobieren, was mir welche Ergebnisse liefert, bin ich zu folgendem Ergebnis gekommen:
Delphi-Quellcode:
Gruß & Danke an alle Anregungen,
procedure TFPaddock.PermgridDblClick(Sender: TObject);
var gc : TGridCoord; p : TPoint; begin p := Point(myX, myY); gc := Permgrid.MouseCoord(p.X, p.Y); if gc.Y > 0 then // Tu was end; Moony :hello: |
Alle Zeitangaben in WEZ +1. Es ist jetzt 06:04 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz