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 und das 1 mal 1 (https://www.delphipraxis.net/88000-stringgrid-und-das-1-mal-1-a.html)

langer hans 8. Mär 2007 17:23


StringGrid und das 1 mal 1
 
Hallo!
1. Hoffe ich ich bin im richtigen bereich...
2. Habe ich die Suche genutzt aber nicht für mein Problem gefunden :pale:

Also ich habe eine Aufgabe bekommen eine 1 mal 1 Tabelle mit einem StringGrid zu realisieren. Ein Klick auf den Button und die werte sollen in der Tabelle stehen.
Da der Lehrer nichts weiter erklärt hat muss das wohl auch mit einer Schleife laufen...
Ich hatte das ja schon so weit allerdings hab ich da für jede Zeile eine Schleife benutzt.
Aber ich bekomm es einfach nicht anders hin.
Mein erster Ansatz sah so aus:
Delphi-Quellcode:
while i<=9 do
begin
i:=i+1;
x:=x+1;
StringGrid1.Cells[i,x]:=inttostr(i*x);
end;
Allerdings bekam ich dann nur die Zahlen zum Quadrat. Ist ja auch logisch. Aber ich komm net weiter und hab echt keine Ahnung was ich noch machen soll... Hoffe ihr helft mir!

MfG

fwsp 8. Mär 2007 17:28

Re: StringGrid und das 1 mal 1
 
du brauchst nicht eine schleife, sondern zwei.
die eine geht die zeilen durch und die andere die spalten. wenn du beide schachtelst, sollte das funktionieren.

NikoMitDaMacht 8. Mär 2007 17:31

Re: StringGrid und das 1 mal 1
 
Also dass Ganz soll am linken und am oberen Rand sollen die Zahlen 1-9 stehen?

Dazu müsstes du zwei schleifen machen, deren variablen mit einander multiplizieren.

langer hans 8. Mär 2007 17:41

Re: StringGrid und das 1 mal 1
 
Ah! Gut vielen dank erstmal. Ich versuch das mal!
Wenn ich nicht mehr weiter komme melde ich mich nochmal.
EDIT: So ist es: Die Zahlen 1-9 sollen oben und links stehen.

Edit2: Egal was ich mache ich bekomme entweder nur eine Zeile oder einmal quer durch...
Ich komm einfach nicht weiter... :cry:
Das kann doch net so schwer sein.
Hat vllt. jemand mal nen Code-Schnipsel als Denkanstoss???
Danke nochmal!

MfG

Klaus01 8. Mär 2007 18:37

Re: StringGrid und das 1 mal 1
 
Guten Abend,

ein kleiner Ansatz:

Delphi-Quellcode:
for i:=1 to 9 do
  for j:=1 to 9 do
    StringGrid1.Cells[i,j]:=inttostr(i*j);
Grüße
Klaus

NikoMitDaMacht 8. Mär 2007 18:41

Re: StringGrid und das 1 mal 1
 
Genau.
In diesem Fall ist es besser eine For-schleife zu verwenden, da diese die variablen selbst um eins erhört.

Hobby-Programmierer 8. Mär 2007 20:43

Re: StringGrid und das 1 mal 1
 
Nabend ...,
mit fester Zeile/Spalte sähe es dann so aus
Delphi-Quellcode:
procedure TForm1.ButtonClick(Sender: TObject);
var iCol, iRow, iFaktor: Integer;
begin
  Faktor:= 1; // 10,20,30...100... evtl. SpinEdit.Value;

  with StringGrid do begin
    FixedCols:= 1;
    FixedRows:= 1;
    iFaktor:= iFaktor -1;

    for iCol:=1 to 10 do begin
      Cells[iCol,0]:= IntToStr(iCol + iFaktor); // FixedCell
      for iRow:=1 to 10 do begin
        Cells[0,iRow]:= IntToStr(iRow + iFaktor); // FixedCell
        Cells[iCol,iRow]:= IntToStr((iCol + iFaktor) * (iRow + iFaktor));
      end;
    end;

  end;
end;
LG Mario

langer hans 9. Mär 2007 18:28

Re: StringGrid und das 1 mal 1
 
Danke nochmal hier kann geclosed werden.
Danke für die hilfe!


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