====== StringGrid ====== === CommaText === ShowMessage(StringGrid1->Rows[i]->CommaText); //Liefert die Werte aus der Zeile i getrennt mit Komma === Werte aus StringGrid in eine ListBox schreiben=== ListBox1->Items->Clear(); //ListBox wird gelöscht for (int i=0; i < StringGrid1->RowCount; i++) { //Jede Reihe wird in die ListBox hinzugefügt ListBox1->Items->Add(StringGrid1->Rows[i]->CommaText); } === ListBox speichern === if (SaveDialog1->Execute()){ListBox1->Items->SaveToFile(SaveDialog1->FileName); === Daten öffnen, in ListBox schreiben und weiter ins StringGrid === if (OpenDialog1->Execute()){ListBox1->Items->LoadFromFile(OpenDialog1->FileName); for (int i=0; i < StringGrid1->RowCount; i++) { StringGrid1->Rows[i]->CommaText=ListBox1->Items->Strings[i]; } } ===== Übung Sommertheater ===== ==== Einfügen von Werten ==== * mittels zweier for-Schleifen! StringGrid1->Cells[j][i]=InputBox("Reihe "+IntToStr(i+1)+", Spalte "+IntToStr(j+1),"Zahl eingeben:",""); Für ein (kleineres) Sommertheater soll ein Kartenverkaufssystem programmiert werden. Das Theater hat 18 Reihen zu je 10 Plätzen. * Für Reihe 1 - 6 zahlt man 30€. * Für Reihe 7 - 12 zahlt man 20€. * Für Reihe 13 - 18 zahlt man 10€. Das Programm soll folgende Punkte umfassen: * Button "Neue Vorstellung" (Feld wird neu initialisiert) * Button "Kartenverkauf" (Nach Eingabe des gewünschten Platzes (Reihe, Sitz) soll dieser gebucht werden. Wenn er schon verkauft ist, soll eine entsprechende Meldung ausgegeben werden. * Button "Storno" (Nach Eingabe des gewünschten Platzes (Reihe, Sitz) soll der gebuchte Platz wieder storniert werden. Wenn der Platz noch nicht verkauft wurde, soll eine entsprechende Meldung ausgegeben werden. * Button "Einnahmen" (Die bisherigen Einnahmen sollen berechnet werden.) Im StringGrid sollen entsprechende Zeichen (z.B. X oder 0 oder ähnliches) für "verkauft" bzw. "frei" eingegeben werden. Bonus: * Buchen mit Namen: Im Hintergrund wird der Name des Theaterbesuchers in ein zweidimensionales Array mitabgespeichert. Über einen Button kann mittels Eingabe von Reihe und Sitz der Name herausgefunden werden. Beim Storno wird der Name natürlich wieder gelöscht.