TStringGrid
-
nein, es sollen ja die anderen zellen auch beschriftet werden mit zahlen, nur die letzte zelle da soll Summe stehen. das äußere des Stringgrids soll so aussehen:
_________________________
1234Summe
1
2
3
4
Summe
_________________________mfg cR
-
for( int i=1; i<=SG1->RowCount; ++i) if( i == RowCount ){ SG1->Cells[0][i] = "Summe"; }else{SG1->Cells[0][i] = IntToStr(i);}
So? Ist aber ausm Gedächtnis geschrieben, also ungetestet
-
Hallo
Wohl eher so
int Summe = 0; int Wert; for( int i=1; i<=SG1->RowCount; ++i) { if( i == RowCount ) { SG1->Cells[0][i] = IntToStr(Summe); } else { Wert = // Wert für Zeile i bestimmen Summe += Wert: SG1->Cells[0][i] = IntToStr(Wert); } }
bis bald
akari
-
warum eigentlich "i<=SG1->RowCount" und "i==RowCount"? beides führt dazu, dass der Summenwert garnicht angezeigt wird, da er _hinter_ der letzten Zeile steht.
die Zählung beim StringGrid geht bei 0 los und geht bis RowCount-1außerdem glaube ich, dass cyberratte wirklich das Wort "Summe" dort stehen haben möchte, aber anhand des gezeigten Quellcodes sollte er das jetzt auch allein hinbekommen
-
hi,
der spuckt fehlermeldung:[C++ Fehler] Unit1.cpp(17): E2451 Undefiniertes Symbol 'RowCount'
und bei
if (i==SG1->RowCount)
startet der compiler aber nichts von "Summe" zu sehen.
mfg cR
-
ja "Summe" als Wort!
-
hi linnea ich gib mir wirklich größte mühe das zu verstehen aber habe überhaupt keine erfahrung mit dem programm, abgesehen davon erfühllt doch der forum sein zweck, stell dir vor wenn jeder diese einstellung hätte, dann wäre kommunikation und gegenseitige hilfe == 0 !
mfg cR
-
wenn du ein fertiges Programm möchtest frag im Projekte-Forum
wenn du etwas lernen möchtest um es für weitere Projekte verwenden zu können, dann nutze diese Forum und lies unsere Beiträge genau durch und teste einfach mal was der Quellcode den du bekommst so tut, dann ändere an der einen oder anderen Stelle etwas, sieh was dann passiert und so weiter. Nur dadurch wirst du verstehen was du eigentlich tust. Soetwas nennt man Learning-by-doing und nicht Copy-Paste.
noch einen Tipp: du müßtest Akaris Quellcode nur etwas abwandeln, meine darunter befindlichen Hinweis beachten und schon hast du "Summe" stehn
aber wenn du lange genug wartest gibt es bestimmt irgendeinen "netten", "hilfreichen" (Un)Registrierten, der dir den gewünschten Quellcode postet und dir damit das aufwendige lernen erspart
-
Learning-by-doing mache ich schon die ganze zeit, das programm wird noch viel größer, ich habs jetzt soweit geschafft mit folgendem code:
for (int i=1;i<5;i++) { SG1->Cells[0][i]=IntToStr(i); SG1->Rows[5]->Text="Summe"; for (int x=1;x<5;x++) { SG1->Cells[x][0]= IntToStr(x); SG1->Cols[5]->Text="Summe"; } }
das nächste: die zeilenanzahl bis maximal 10 bestimmen mit hilfe von combobox?
mfg cR
-
na geht doch
Einige kleine Änderungen möchte ich vorschlagen : mach die beiden For-Schleifen nicht ineinander, dadurch läuft die 2. For-Schleife unnütz andauernd mit durch.
Außerdem kann die Zuweisung der "Summe" außderhalb der Schleife gemacht werden, da auch diese sonst nur unnützt andauernd gemacht wird.
Falls wirklich immer die Spaltenanzahl der Zeilenanzahl entspricht kannst du das sogar in eine For-Schleife packen.cyberratte schrieb:
das nächste: die zeilenanzahl bis maximal 10 bestimmen mit hilfe von combobox?
das versteh ich nicht. mal grob geraten: ItemIndex