Autor Beitrag
maniac_89
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 54



BeitragVerfasst: So 27.02.05 16:01 
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:

ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
procedure TForm1.Button1Click(Sender: TObject);
begin
//die Variable leange steht für die Länge 
//die Variable hoehe für die Höhe

//anstatt der Zahlen sollen dann eine Variablen die angeklickten Felder bestimmen
//stringgrid1.Cells [2,2] := 'Mahtematik';

stringgrid1.Cells [leange, hoehe] := 'Mahtematik';
end;



Ich hoffe ihr hapt meine Frage verstanden.

Steffen, Maniac_89

Moderiert von user profile iconraziel: Delphi-Tags hinzugefügt.
Moderiert von user profile iconraziel: Topic aus Sonstiges verschoben am So 27.02.2005 um 17:23
Keldorn
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 2266
Erhaltene Danke: 4

Vista
D6 Prof, D 2005 Pro, D2007 Pro, DelphiXE2 Pro
BeitragVerfasst: So 27.02.05 17:14 
Hallo

ausblenden 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

_________________
Lükes Grundlage der Programmierung: Es wird nicht funktionieren.
(Murphy)
maniac_89 Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 54



BeitragVerfasst: So 27.02.05 20:47 
Ich galube du hast mich nicht richtig verstanden :?: ich wollte wisse wie man herausbekommen kann, auf welche Zelle der Benutzer geklickt hat.
OneOfTen
Ehemaliges Mitglied
Erhaltene Danke: 1



BeitragVerfasst: So 27.02.05 20:51 
guck dir mal das OnSelectCell-Ereignis des Stringgrids an, allerdings hab ich das aus deinem ersten Beitrag auch nicht herausgelesen
maniac_89 Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 54



BeitragVerfasst: So 27.02.05 21:59 
Was soll ich damit machenn???
OneOfTen
Ehemaliges Mitglied
Erhaltene Danke: 1



BeitragVerfasst: So 27.02.05 22: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 Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 54



BeitragVerfasst: So 27.02.05 22:41 
Kanst du mir vieleicht denn Quelltext dazu schreiben.
Keldorn
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 2266
Erhaltene Danke: 4

Vista
D6 Prof, D 2005 Pro, D2007 Pro, DelphiXE2 Pro
BeitragVerfasst: So 27.02.05 22:47 
ausblenden 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

_________________
Lükes Grundlage der Programmierung: Es wird nicht funktionieren.
(Murphy)
Spatz
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 57

WIN 2k
D7E
BeitragVerfasst: Mo 28.02.05 00: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.