AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Listview CommaText mit Leerzeichen

Ein Thema von ebber · begonnen am 23. Apr 2007 · letzter Beitrag vom 29. Apr 2007
Antwort Antwort
ebber

Registriert seit: 31. Okt 2006
243 Beiträge
 
#1

Listview CommaText mit Leerzeichen

  Alt 23. Apr 2007, 19:30
Hallo

ich habe vor einiger Zeit mal diesen Code gefunden um in ein Listview etwas einzutragen.

Delphi-Quellcode:

procedure TForm3.ListViewAddItm(ListView: TListView; const ersteSpalte,
          Rest_CommaText: String; Checked: Boolean = true);
var
  ListItem: TListItem;

begin
  with ListView do
    begin
      ListItem := Items.Add;
      ListItem.Caption := ersteSpalte;
      ListItem.SubItems.CommaText := Rest_CommaText;
      If Checkboxes then
        Items.Item[Items.Count - 1].Checked := Checked;
    end;
end;


Wenn jetzt aber ein Leerzeichen in einem der Comma Texts ist dann geht es automatisch eine Spalte weiter. Kann man das irgenwie verhindern ?

MfG
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.851 Beiträge
 
Delphi 11 Alexandria
 
#2

Re: Listview CommaText mit Leerzeichen

  Alt 23. Apr 2007, 19:32
Das ist bei der Standard-Strngliste so. Du könntest die Leerzeichen ersetzen oder die Untereinträge anders erzeugen (Explode)
Markus Kinzler
  Mit Zitat antworten Zitat
marabu

Registriert seit: 6. Apr 2005
10.109 Beiträge
 
#3

Re: Listview CommaText mit Leerzeichen

  Alt 24. Apr 2007, 07:05
Hallo,

wenn der Text (CommaText) zuerst kompatibel gemacht wird, dann kann der Code beibehalten werden:

Delphi-Quellcode:
function CommaText(const text: string; delimiter: Char = ','): string;
var
  s: TStrings;
begin
  s := TStringList.Create;
  try
    Explode(text, delimiter, s);
    Result := s.CommaText;
  finally
    s.Free;
  end;
end;
Die verwendete Funktion Explode() findest du dort: klick

Grüße vom marabu
  Mit Zitat antworten Zitat
ebber

Registriert seit: 31. Okt 2006
243 Beiträge
 
#4

Re: Listview CommaText mit Leerzeichen

  Alt 29. Apr 2007, 19:11
Danke.

So gehts
  Mit Zitat antworten Zitat
CCRDude
(Gast)

n/a Beiträge
 
#5

Re: Listview CommaText mit Leerzeichen

  Alt 29. Apr 2007, 19:18
Ansonsten gibts ja noch TStringList.StrictDelimiter, mit dem man auch dafür sorgen kann, daß eine TStringList wirklich nur das vorgegebene Trennzeichen verwendet. Also, grob geraten:

Delphi-Quellcode:
ListItem.SubItems.StrictDelimiter := true;
ListItem.SubItems.Delimiter := ';';
ListItem.SubItems.DelimitedText := Rest_CommaText;
Leider nur in Delphi, FreePascal kennt StrictDelimiter noch nicht.
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 20:42 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