AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

TStringGrid, Doppelklick auf fixed Row ignorieren

Ein Thema von hoika · begonnen am 25. Nov 2010 · letzter Beitrag vom 25. Nov 2010
Antwort Antwort
hoika

Registriert seit: 5. Jul 2006
Ort: Magdeburg
8.270 Beiträge
 
Delphi 10.4 Sydney
 
#1

TStringGrid, Doppelklick auf fixed Row ignorieren

  Alt 25. Nov 2010, 13:30
Halo#,

irgendwie stehe ich auf dem Schlauch.

Der folgende Code soll beim Doppelklick auf eine Zelle das DoEdit aufrufen,
ausser beim Doppelklick auf die FixRow.

Delphi-Quellcode:
procedure TForm1.GridDataDblClick(Sender: TObject);
var
  iCol: Integer;
  iRow: Integer;
  Point: TPoint;
begin
  Point.X:= Mouse.CursorPos.X;
  Point.Y:= Mouse.CursorPos.X;
  Point:= GridData.ScreenToClient(Point);

  GridData.MouseToCell(Point.X, Point.Y, iCol, iRow);
  if iRow<1 then Exit;

  DoEdit; // das eigentliche Editieren
end;
Klappt aber nicht ;(
iCol und iRow ergeben immer -1 ???

Was mache ich verkehrt ?


Danke


Heiko
Heiko
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.542 Beiträge
 
Delphi 11 Alexandria
 
#2

AW: TStringGrid, Doppelklick auf fixed Row ignorieren

  Alt 25. Nov 2010, 13:38
Delphi-Quellcode:
procedure TfrmTest.StringGrid1DblClick(Sender: TObject);
var p: TPoint;
    aCol, aRow: integer;
begin
  p := StringGrid1.ScreenToClient(Mouse.CursorPos);
  StringGrid1.MouseToCell(p.X,p.Y,aCol,aRow);
  if aRow < StringGrid1.FixedRows then
    begin
      if aRow < 0 then
        ShowMessage('Keine Zelle an dieser Stelle')
      else
        ShowMessage('Fixe Zeile geklickt');
    end;
end;
Klappt bei mir so
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
hoika

Registriert seit: 5. Jul 2006
Ort: Magdeburg
8.270 Beiträge
 
Delphi 10.4 Sydney
 
#3

AW: TStringGrid, Doppelklick auf fixed Row ignorieren

  Alt 25. Nov 2010, 14:46
Hallo,

Point.X:= Mouse.CursorPos.X;
Point.Y:= Mouse.CursorPos.Y;

Und das <0 auf <1 ändern ...


Das war mein Fehler


Danke


Heiko
Heiko
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 20:40 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