Entwickler-Ecke
Grafische Benutzeroberflächen (VCL & FireMonkey) - StringGride Zelle erfragen
maniac_89 - So 27.02.05 15:01
Titel: StringGride Zelle erfragen
Hi,
ich wollte mal fragen wie man bei einem Stringgrid herausbekommen kann was für Breiten und Längen Werte die makierte Zelle hat.
Hier ein Beispiel:
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10:
| procedure TForm1.Button1Click(Sender: TObject); begin
stringgrid1.Cells [leange, hoehe] := 'Mahtematik'; end; |
Ich hoffe ihr hapt meine Frage verstanden.
Steffen, Maniac_89
Moderiert von
raziel: Delphi-Tags hinzugefügt.Moderiert von
raziel: Topic aus Sonstiges verschoben am So 27.02.2005 um 17:23
Keldorn - So 27.02.05 16:14
Hallo
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7:
| Spaltenbreiten und Zeilenhöhen w:=stringgrid.colwidths[Spalte]; h:=stringgrid.rowheights[Zeile];
h:=Stringgrid.canvas.textheight(string); w:=Stringgrid.canvas.textwidth(string); oder alles zusammen mit textextend |
Mfg Frank
maniac_89 - So 27.02.05 19:47
Ich galube du hast mich nicht richtig verstanden :?: ich wollte wisse wie man herausbekommen kann, auf welche Zelle der Benutzer geklickt hat.
Delete - So 27.02.05 19:51
guck dir mal das OnSelectCell-Ereignis des Stringgrids an, allerdings hab ich das aus deinem ersten Beitrag auch nicht herausgelesen
maniac_89 - So 27.02.05 20:59
Was soll ich damit machenn???
Delete - So 27.02.05 21:29
Wenn du das Ereignis mit Code ausfüllst, hast du mit den übergebenen Parameter ACol und ARow die entsprechenden Koordinaten der Zelle die ausgewählt wurde und das wollteste doch oder nicht?
maniac_89 - So 27.02.05 21:41
Kanst du mir vieleicht denn Quelltext dazu schreiben.
Keldorn - So 27.02.05 21:47
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15:
| procedure TForm1.StringGrid1SelectCell(Sender: TObject; ACol, ARow: Integer; var CanSelect: Boolean); begin showmessage('Es wird gerade die Zelle '+inttostr(acol)+', '+inttostr(arow)+' ausgewählt'); end;
procedure TForm1.Button1Click(Sender: TObject); begin showmessage('Es ist gerade die Zelle '+inttostr(stringgrid1.col)+', '+inttostr(stringgrid1.row)+' ausgewählt'); end;
procedure TForm1.StringGrid1Click(Sender: TObject); begin showmessage('Es ist gerade die Zelle '+inttostr(stringgrid1.col)+', '+inttostr(stringgrid1.row)+' ausgewählt'); end; |
mit onselect solltest du in deinem Wissenstand vorsichtig sein. onclik wäre besser, da dann die Zelle schon ausgewählt
ist.
Mfg Frank
Spatz - So 27.02.05 23:26
wenn du nur x/y koordinaten des klickpunktes der maus hast, dann schau dir mal die methode TStringGrid.mouseToCell (oder so, hab delphi grad nicht offen) an.
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2026 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!