Delphi-PRAXiS
Seite 1 von 5  1 23     Letzte »    

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 Delete strings in ListBox (https://www.delphipraxis.net/103263-delete-strings-listbox.html)

taktaky 13. Nov 2007 14:23


Delete strings in ListBox
 
Hallo,

ich habe eine List in ListBox1 und wollte alle letze 2 Strings löschen
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var i, j : Integer;
begin
for i := ListBox1.Items.Count-1 downto ListBox1.Items.Count-2 do
Delete(ListBox1.Items[i]);
end;

// ich möchte also nicht die Zeilen löschen sondern die letzte 2 Strings in jede Zeile in ListBox löschen

Ich muss also auch in jede Zeile suchen

Luckie 13. Nov 2007 14:27

Re: Delete strings in ListBox
 
Warum eine schleife, wenn du nur die letzten beiden Einträge löschen willst? Und Delete löschte Zeichen aus einer Zeichenkette. Wenn du nur den Text löschen möchtes, dann weise den Items eine leere Zeichenkette zu.

alzaimar 13. Nov 2007 14:27

Re: Delete strings in ListBox
 
Die Eigenschaft 'Items' der Listbox ist ein TStrings-Objekt. Diese Klasse stellt die richtigen Methoden bereit. Schau mal in der Delphi-Hilfe unter TStrings oder der Eigenschaft 'Items' einer Listbox.

Nuclear-Ping 13. Nov 2007 14:27

Re: Delete strings in ListBox
 
Du kannst nicht mit den Zeilen der Listbox direkt arbeiten, bzw. nicht an Delete übergeben, sondern musst die erst in nem String zwischenspeichern, den bearbeiten und dann der ListBox wieder zuweisen.

Grundlagen wissen solltest du ja inzwischen schon genug haben und auch wissen, wie man die Delphi Hilfe benutzt. ;)

[edit]
Achso, verlesen. Dachte du wolltest die letzten zwei Zeichen der Strings löschen ...
[/edit]

leddl 13. Nov 2007 14:29

Re: Delete strings in ListBox
 
Mal davon abgesehen, dass der Quellcode wieder mal totaler Quatsch ist:
Zitat:

Zitat von taktaky
// ich möchte also nicht die Zeilen löschen sondern die letzte 2 Strings in jede Zeile in ListBox löschen

In jeder Zeile befindet sich nur ein einziger String... :roll:
Zitat:

Zitat von taktaky
Ich muss also auch in jede Zeile suchen

Dann schau dir deinen Quellcode nochmal genau an, das tust du nicht mal ansatzweise... :wall:

DeddyH 13. Nov 2007 14:56

Re: Delete strings in ListBox
 
Was willst Du löschen? Die letzten beiden Zeilen oder jeweils die letzten beiden Zeichen je Zeile?

taktaky 13. Nov 2007 18:32

Re: Delete strings in ListBox
 
natürlich die letzte 2 Zeichen je Zeile

Ich versuche nun mit Length, pos

mkinzler 13. Nov 2007 18:34

Re: Delete strings in ListBox
 
setLength()

Progman 13. Nov 2007 18:35

Re: Delete strings in ListBox
 
Delete(Str, Length(str)-1, 2);

DeddyH 13. Nov 2007 18:41

Re: Delete strings in ListBox
 
Nur der Vollständigkeit halber:
Delphi-Quellcode:
str := Copy(str,1,Length(str) - 2);


Alle Zeitangaben in WEZ +1. Es ist jetzt 06:17 Uhr.
Seite 1 von 5  1 23     Letzte »    

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz