Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Delphi StringGrid: Klick auf FixCol? (https://www.delphipraxis.net/61009-stringgrid-klick-auf-fixcol.html)

Helmi 15. Jan 2006 19:47


StringGrid: Klick auf FixCol?
 
Hallo,

wie kann ich rausfinden, wenn jemand mit der Maus auf eine Zelle in der FixCol (hab nur eine) klickt?

ich hab schon folgendes probiert:
Delphi-Quellcode:
procedure TMainForm.StringGrid_AblaufClick(Sender: TObject);
var
  Maus_Zeile, Maus_Spalte: Integer;
  MousePos: TPoint;

begin
  GetCursorPos(MousePos);

  with StringGrid_Ablauf do
    begin
      MouseToCell(MousePos.X, MousePos.Y, Maus_Spalte, Maus_Zeile);

      If Maus_Spalte = 0 then
        StringGrid_Zeile_markieren;
    end;
end;
Aber das OnClick-Event wird scheinbar nicht bei FixCols ausgelöst.

Ich hab auch schon mal OnSelectCell probiert, aber dies wird nur ausgelöst, wenn eine Zelle selectiert wird, da das aber eine FixCol ist, kann ich sie nicht selectieren.

idontwantaname 15. Jan 2006 20:30

Re: StringGrid: Klick auf FixCol?
 
OnMouseDown hilft auch nicht ?

Helmi 15. Jan 2006 20:38

Re: StringGrid: Klick auf FixCol?
 
Zitat:

Zitat von idontwantaname
OnMouseDown hilft auch nicht ?

shit - das hab ich total vergessen! :wall:

Das geht! - Danke! :thumb:

Buddelflink089 15. Jan 2006 20:47

Re: StringGrid: Klick auf FixCol?
 
Delphi-Quellcode:
procedure TForm1.StringGrid_AblaufMouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
var ACol, ARow: Integer;
begin
  StringGrid_Ablauf.MouseToCell(x, y, ACol, ARow);
  if (ARow = 0) and (Button = mBLeft) then
{ Programmcode der ausgeführt werden soll }
    ShowMessage('Header ' + IntToStr(ACol));
end;

procedure TForm1.StringGrid_AblaufMouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer);
var ACol, ARow: Integer;
begin
  StringGRid_Ablauf.MouseToCell(x, y, ACol, ARow);
  if ARow = 0 then
    StringGrid_Ablauf.Cursor:= crHandPoint
   else
    StringGrid_Ablauf.Cursor:= crArrow;
end;
Sollte helfen :gruebel:

Liebe Grüsse Mario

PS: MouseMove als Zuckerl, damit der Benutzer sieht das an diesem 'Buttom' etwas zu machen ist :idea:

Christian Seehase 15. Jan 2006 22:00

Re: StringGrid: Klick auf FixCol?
 
Moin Helmi,

nimm aber lieber MouseUp, um den "Click" auszulösen.
Das entspricht dann dem "normalen" Verhalten.


Alle Zeitangaben in WEZ +1. Es ist jetzt 09:12 Uhr.

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