Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   Mit rechter Maustaste Zellen im Stringgrid aktivieren? (https://www.delphipraxis.net/37834-mit-rechter-maustaste-zellen-im-stringgrid-aktivieren.html)

gflash 11. Jan 2005 07:36


Mit rechter Maustaste Zellen im Stringgrid aktivieren?
 
Hallo!

Ich möchte gerne in einem Stringgrid auch mit der rechten Maustaste Zellen aktivieren können, also dass ich dann über stringlist.row und stringlost.col auf diese Zelle zugreifen kann. Hintergrund des Ganzen ist, dass ich über ein Popup-Menü den Zelleninhalt der Zelle, auf der man mit der rechten Maustaste gedrückt hat, modifizieren möchte.

Wie geht das?

Alex_ITA01 11. Jan 2005 08:00

Re: Mit rechter Maustaste Zellen im Stringgrid aktivieren?
 
Hallo erstmal,
ich glaube folgender Code dürfte dir helfen:

Delphi-Quellcode:
procedure TForm1.GridMouseDown(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
var
  ACol,
  ARow : Integer;
begin
  if Button = mbRight then
  begin
    Grid.MouseToCell(X,Y,ACol,ARow);
    Grid.Col := ACol;
    Grid.Row := ARow;
  end;
end;
Jetzt musst du nur noch das PopUpMenü an der Stelle X, Y aufrufen. Da gibts glaube ich OnPopUpMenu oder so ähnlich womit man die Position setzen kann...

MFG Alex

gflash 11. Jan 2005 08:27

Re: Mit rechter Maustaste Zellen im Stringgrid aktivieren?
 
Hallo Alex!

Vielen Dank, das hat schon geholfen. Aber jetzt kommt schon die nächste Frage, mit der ich mich die letzte halbe Stunde herumgeprügelt habe:

Ich möchte dass wenn der Benutzer im Popupmenü einen bestimmten Punkt anwählt, den Text in der Zelle, auf die mit Rechts geklickt wurde, kursiv und rot darstellen. Ich hab hier im Forum zwar einiges dazu gefunden, aber leider nichts, was mir weitergeholfen hätte.

- Die Funktion stringgrid.DefaultDrawColumnCell(Rect, DataCol, Column, State) gibt es bei mir nicht
- stringgrid.Cells[i].Font.Style := [fsBold] meldet Fehler, weil stringgrid.Cells vom Typ String ist

Wie also kann ich das machen?

Sharky 11. Jan 2005 08:34

Re: Mit rechter Maustaste Zellen im Stringgrid aktivieren?
 
Hai gflash,

mache doch bitte für jede einzelne Frage einen eigenen Thread auf. Dann bleibt alles etwas übersichtlicher ;-)
Aber schaue doch einfach mal in diesen Thread. Das sollte sehr einfach auf dein Problem anzupassen sein.

BTW: Herzlich Willkommen in der Delphi-PRAXIS.

gflash 12. Jan 2005 06:58

Re: Mit rechter Maustaste Zellen im Stringgrid aktivieren?
 
Tach Sharky,

Danke, habe mein Problem mit Hilfe Deines Links gelöst. Und das mit dem neuen Thread für neue Fragen werde ich mir merken :)


Alle Zeitangaben in WEZ +1. Es ist jetzt 03:16 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