TStringList speichern
-
anderes Beispiel aus der Hilfe:
[cpp]
TStrings StringList = new TStringList();
try
{
StringList->Add("In diesem Beispiel wird eine Stringliste verwendet.");
StringList->Add("Das ist die einfachste Möglichkeit, Strings");
StringList->Add("in ein Kombinationsfeld einzufügen.");
StringList->Add("Nicht vergessen: Die Methode TStrings ");
StringList->Add("ist virtuell. Erstellen Sie statt dessen ");
StringList->Add("eine Stringliste.");
ComboBox1->Width = 210;
ComboBox1->Items->Assign(StringList);//Ich hab mich nunmal an CommaText gewöhnt.
ComboBox1->ItemIndex = 0;
}
__finally (...)
{
delete StringList;
}[/cpp]
-
In diesem Beispiel wird eine Stringliste verwendet.
Das ist die einfachste Möglichkeit, Strings in ein Kombinationsfeld einzufügen.
Nicht vergessen: Die Methode TStrings ist virtuell. Erstellen Sie statt dessen eine Stringliste.Steht eigentlich alles drinne.
-
Nash schrieb:
Zeige mir das Programm, das 100% alle auch nur erdenklichen Fälle abdecken kann.

Habe ich nie behauptet. Aber ein Programm sollte nicht bewusst Fälle von vornherein ignorieren, weil sie nur unwahrscheinlich sind.
Nash schrieb:
Bei Deiner Homepage kann man das nicht gerade sagen :
No write permission on '/is/htdocs/wp1008337_O8EB1ILLQC/www/webspace/eastsoft/crafty/templates_c/'. Please grant write access for theuser / process running php.
Was hast du dagegen? Das Programm erkennt den Fehler korrekt und weist den Anwender darauf hin, was zu tun ist. Und das werde ich jetzt auch gleich mal. ähem, räusper, hüstel
Nash schrieb:
Wenn Du Kritik äußern willst dann tu das, aber konstruktiv und nicht einfach irgendwas in den Raum werfen, nur um sich mal zu Wort zu melden.
Hättest du auch den Rest des Absatzes gelesen, wüsstest du schon was ich meine. Aber wie gesagt, meine arme Tischplatte eben... :p Aber weil heute Ostermontag ist, zitiere ich noch einmal extra für dich:
BCB-Hilfe schrieb:
TStringList implementiert die von TStrings eingeführten abstrakten Eigenschaften und Methoden und führt selbst neue Eigenschaften, Ereignisse und Methoden ein, die...
-
Hallo,
Oh man... eigentlich habe was anderes zu tun...

Aber OK.Habe ich nie behauptet.
Doch hast Du...
leider sind gute Programme darauf bedacht, hundert Prozent aller Fälle abzudecken
...aber egal...

TStringList implementiert die von TStrings eingeführten abstrakten Eigenschaften und Methoden und führt selbst neue Eigenschaften, Ereignisse und Methoden ein, die...
Ja und, heisst das ich darf das jetzt nicht so machen auch wenn es in der Hilfe als Beispiel vorhanden ist... och menno... :p
Ahja, ich kann mir jetzt vorstellen, warum Deine Tischplatte andauernd kaputt ist... aber keine Angst, Du lernst das auch noch...

@ Meister Röhrich :
Mir ist jetzt erst aufgefallen, daß Du mich vollkommen mißverstanden hast.ComboBox1->Items->CommaText=List->Text;Das geht natürlich nicht. Ich meinte :
ComboBox1->Items->Text = List->Text;Das sollte genau das gleiche sein, oder...
Mein Post :
Mir ist der Unterschied schon bewusst. ...
Kannst Du damit ignorieren
.P.S.:
Mir ist es übrigens Wurscht, ob man nun "Assign", "AddStrings" oder was auch immer benutzt. Ist doch Geschmackssache und kommt auch auf den Verwendungszweck an. Ich mache es so und Du eben anders... na schön, warum auch nicht. Beides funktioniert und erfüllt seinen Zweck.Bis dann denn,

Nash
-
@ Meister Röhrich :
Mir ist jetzt erst aufgefallen, daß Du mich vollkommen mißverstanden hast.
...
Das sollte genau das gleiche sein, oder...Ist es aber eben nicht.

-
Hallo,
Kannst Du oder willst Du nicht verstehen ?

Wo ist hier der Unterschied im Ergebnis ?[cpp]
void __fastcall TForm2::BitBtn2Click(TObject Sender)
{
TStringList List = new TStringList();
List->Add("Test");
List->Add("Test,2");
List->Add("Test,3");
ComboBox1->Items->Text = List->Text;
delete List;
}
//---------------------------------------------------------------------------void __fastcall TForm2::BitBtn3Click(TObject Sender)
{
TStringList List = new TStringList();
List->Add("Test");
List->Add("Test,2");
List->Add("Test,3");
ComboBox2->Items->CommaText = List->CommaText;
delete List;
}
//---------------------------------------------------------------------------
[/cpp]
... keiner, denn das Ergebnis ist gleich.Und tu mir einen Gefallen, bevor Du wieder sagst, daß es nicht das Gleiche ist, probier es aus.
Bis dann denn,

Nash
-
So langsam ist es echt unfassbar ....

TStringList* List = new TStringList(); List->Add("Test"); List->Add("Test2"); List->Add("Test3\r"); ComboBox1->Items->Text = List->Text; delete List; List = new TStringList(); List->Add("Test"); List->Add("Test2"); List->Add("Test3\r"); ComboBox2->Items->CommaText = List->CommaText; delete List;Verstehst du den Unterschied ? Wenn nicht, nimm endlich mal die Hilfe ...

-
Hallo,
So langsam ist es echt unfassbar ....
Das dachte ich auch gerade.
Natürlich gibt es einen Unterschied zwischen "Text" und "CommaText". Wenn ich mir ein Beispiel bastel, dann sieht man ihn auch. Aber wir entfernen uns vom Thema. Außerdem weiss ich nicht, warum Du hier ausfallend wirst. Wenn man nicht das macht was Du willst, fippst Du aus... machst Du das immer so ?Um zum Thema zurückzukommen :
Man kann, wenn man die Aufgabenstellung berücksichtigt (und die ist ganz einfach), "Text" oder "CommaText" nehmen. Das macht keinen Unterschied (jedenfalls nicht in diesem Beispiel, wo ich Werte, die aus einem Textfeld kommen, hinzufügen will). So, nun kann der Themenstarter das machen oder auch nicht, daß bleibt ihm überlassen. Ich klinke mich aus diesem Thread aus, den ich habe keinen Bock mich mit irgendwem hier rumzustreiten, nur weil der anderer Meinung ist und keine andere gelten lassen will.P.S.:
Bei Deinem Beispiel ist "CommaText" irgendwie nicht geeignet, denn es wird kein Zeilenumbruch hinzugefügt, sondern ein Sonderzeichen (senkrechter dicker Strich). Nicht sehr schlau...
Bis dann denn,

Nash
-
Außerdem weiss ich nicht, warum Du hier ausfallend wirst. Wenn man nicht das macht was Du willst, fippst Du aus... machst Du das immer so ?
*Lol*
Mach mich doch nicht dafür verantwortlich, wenn dich die Wahrheit zu hart trifft.
Du hast den Unterschied aber halt immer noch nicht begriffen.
Du stellst hier Behauptungen auf.Und tu mir einen Gefallen, bevor Du wieder sagst, daß es nicht das Gleiche ist, probier es aus.
Soll heißen ... CommaText == Text
und im nächsten Atemzug gibst du sowas von dirNatürlich gibt es einen Unterschied zwischen "Text" und "CommaText".
Du kannst jede Menge unterschiedlichen Code erzeugen, der anscheinend das gleiche macht. In bestimmten Fällen, das kann halt auch nur ein "\r" sein erzeugen diese unterschiedlichen Codes aber eben ganz erheblich unterschiedliche Ergebnisse.
Bei Deinem Beispiel ist "CommaText" irgendwie nicht geeignet, denn es wird kein Zeilenumbruch hinzugefügt, sondern ein Sonderzeichen (senkrechter dicker Strich).
Krach.
Das war nun meine Tischplatte.Tschüss Troll.
-
Mit dem Backslash (\) beginnt eine Escape-Sequenz, die zur Repräsentation nicht darstellbarer Zeichen dient (z.B. steht \n für das Zeichen "Zeilenvorschub".
...
[!BSLASH!]r 0x0D CR Wagenrücklauf
...So aber nun schlaf schön weiter...
-
Hallo,
Eigentlich ist Dein Niveau unterste Schublade, aber was soll's.
OK, ein letztes Mal noch... für die Langsamversteher.Soll heißen ... CommaText == Text
Das, habe ich nie gesagt ! Ich habe gesagt, das es in diesem Fall egal ist.
Nash
Bei Deinem Beispiel ist "CommaText" irgendwie nicht geeignet, denn es wird kein Zeilenumbruch hinzugefügt, sondern ein Sonderzeichen (senkrechter dicker Strich).Was hast Du daran auszusetzen. Nicht darstellbare Sonderzeichen (ob nun Zeilenwechsel oder was auch immer) werden nun mal als senkrechter dicker Strich dargestellt. Wenn Du das mal ausprobiert hättest, würdest Du es sehen, aber ich schätze mal, Du bist so arrogant und versuchst es nicht einmal, nur weil Du Angst hast ein anderer könnte Recht haben.
Tschüss Troll.
Ohne Kommentar...

Und jetzt husch husch ins Bettchen, bevor die Mami kommt und Dich erwischt.
Noch ein Tipp zum Schluß : Du solltest lieber bei Gas, Wasser, ... bleiben und nicht versuchen zu programmieren, denn daß kannst Du noch nicht so gut wie Du denkst.Bye
-
Das, habe ich nie gesagt ! Ich habe gesagt, das es in diesem Fall egal ist.
Sowas ist niemals "egal".
Vielleicht aber bei einem Hobbycoder wie dir.
Was hast Du daran auszusetzen. Nicht darstellbare Sonderzeichen (ob nun Zeilenwechsel oder was auch immer) werden nun mal als senkrechter dicker Strich dargestellt. Wenn Du das mal ausprobiert hättest, würdest Du es sehen, aber ich schätze mal, Du bist so arrogant und versuchst es nicht einmal, nur weil Du Angst hast ein anderer könnte Recht haben.
*Lol*

Noch ein Tipp zum Schluß : Du solltest lieber bei Gas, Wasser, ... bleiben und nicht versuchen zu programmieren, denn daß kannst Du noch nicht so gut wie Du denkst.
Also weiter kannst du nun wirklich nicht mehr sinken.Selbst für einen Zeitungsboten wie dich ist das unterste Schublade.Änder dahingehend mal deinen "Traumberuf" in deiner Signatur ...

-
Also bitteschön nochmal für dich zum probieren.
ComboBox1->Items->Add("\n"); ComboBox1->Items->Add("\r");erzeugt
[CommboBox1 ][^]
[ ]
[ ]Sieh mal an.Da biste platt.

-
Ps.
Kannst du in deiner Systemsteuerung aktivieren/deaktivieren.
-
*EDIT* - Irrtum... sorry