Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi (TDBGrid) - Klick auf den indicator abfangen? (https://www.delphipraxis.net/36598-tdbgrid-klick-auf-den-indicator-abfangen.html)

100nF 22. Dez 2004 13:09


(TDBGrid) - Klick auf den indicator abfangen?
 
hallo zusammen,

ich habe eine kleine aber wichtige frage: wie kann ich einen klick auf den indicator eines DBGrids abfangen, das heillt, sobald ich auf den indicator klicke, muss eine procedure ausgeführt werden. wichtig ist auch, dass die zeile, bei der auf den indicator geklickt wurde, zur aktuellen zeile wird, und auch der datensatz.

ich denke das ist nicht sehr schwierig, aber ich habe noch nichts darüber gefunden.

schon mal danke im voraus, ich hoffe ihr könnt mir helfen

Albi 22. Dez 2004 13:59

Re: (TDBGrid) - Klick auf den indicator abfangen?
 
Hallo,

wenn ich das richtig verstanden habe, dann soll der aktuelle DS makiert und eine Aktion ausgeführt werden.

Dann setze im OP einfach die Option alwayShowSelection auf true, so wird die gesamte Zeile makiert und im onClick- o.onDBClick-Ereignis kannst du die gewünschte Aktion ausführen.

Durch den Click auf den Datensatz im DBGrid wird der Datensatzzeiger automatisch auf den aktuellen DS gesetzt. Darum brauchst Du dich also nicht kümmern.

100nF 22. Dez 2004 14:03

Re: (TDBGrid) - Klick auf den indicator abfangen?
 
ok, das hab ich
aber wie kann ich jetzt einen klick auf den indicator abfangen?

eddy 22. Dez 2004 14:11

Re: (TDBGrid) - Klick auf den indicator abfangen?
 
Hallo urbanbruhin,

ich nehme an, daß Du die linke graue Spalte als "indicator" bezeichnest.

Auf "OnMouseDown" reagiert - wie's aussieht - das Standard-TDBGrid nicht. Im TRxDBGrid hingegen kann man eine Auswertung vornehmen.

Code:
procedure TFAllgUP2.dbg201MouseDown(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
begin
  if x < 20 then begin
    // gezielte Reaktion auf die Position des Mauszeigers
  end;
end;
mfg
eddy

100nF 22. Dez 2004 14:25

Re: (TDBGrid) - Klick auf den indicator abfangen?
 
also das fuktioniert nicht

eddy 22. Dez 2004 14:49

Re: (TDBGrid) - Klick auf den indicator abfangen?
 
Hallo urbanbruhin,

Du mußt Dir schon die Mühe machen und zuvor einer Version von "RX Library 2.75" zu installieren.

Getestet und funktionsfähig mit TRxDBGrid

Code:
procedure TForm1.dbg1MouseMove(Sender: TObject; Shift: TShiftState; X,
  Y: Integer);
begin
  BotStat00.Caption := 'X/Y=' + IntToStr(x) + '/' + IntToStr(y);
end;

procedure TForm1.dbg1MouseDown(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
begin
  if x < 11 then begin
    if Button = mbLeft then begin  //, mbRight, mbMiddle
      ShowMessage('Linke Maustaste am linken Rand gedrückt');
    end;
  end;
end;
mfg
eddy

100nF 22. Dez 2004 15:04

Re: (TDBGrid) - Klick auf den indicator abfangen?
 
aber das ist ja das selbe wie das von vorher: wenn der cursor soviel x hat, passierts

gibt es keine andere möglichkeit?

Zitat:

Du mußt Dir schon die Mühe machen und zuvor einer Version von "RX Library 2.75" zu installieren.
was ist gut an diesem teil?

eddy 22. Dez 2004 15:27

Re: (TDBGrid) - Klick auf den indicator abfangen?
 
Hallo urbanbruhin,

ganz einfach: damit funktioniert es!!!

Habe ich aber oben schon geschrieben:
Zitat:

Auf "OnMouseDown" reagiert - wie's aussieht - das Standard-TDBGrid nicht. Im TRxDBGrid hingegen kann man eine Auswertung vornehmen.
Du kannst natürlich auch eine eigene DBGrid-Komponente aus der Standard-Version herleiten und entsprechend verbessern, zumindest theoretisch.


mfg
eddy

100nF 22. Dez 2004 15:30

Re: (TDBGrid) - Klick auf den indicator abfangen?
 
und dieser neue dbgrid kann ich auch einfach mit einem TDataSource verbinden?

wenn ja: wüsstest du gerade, wo man dieses "teil" downloaden kann?
wenn nein: dann nützt es mir nichts

Sharky 22. Dez 2004 15:46

Re: (TDBGrid) - Klick auf den indicator abfangen?
 
Zitat:

Zitat von urbanbruhin
...wenn ja: wüsstest du gerade, wo man dieses "teil" downloaden kann?....

Hai urbanbruhin,

TRxDBGrid ist bestandteil der RxTools. Da diese jedoch nicht weiterentwickelt werden empfehle ich dir eher die JVCL. Meines wissens wurden dort die Komponenten der RxTools eingebaut.


Alle Zeitangaben in WEZ +1. Es ist jetzt 10:56 Uhr.
Seite 1 von 2  1 2      

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz