AGB  ·  Datenschutz  ·  Impressum  







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

ListBox und array

Ein Thema von EWeiss · begonnen am 14. Mär 2011 · letzter Beitrag vom 14. Mär 2011
Antwort Antwort
Seite 3 von 4     123 4      
EWeiss
(Gast)

n/a Beiträge
 
#21

AW: ListBox und array

  Alt 14. Mär 2011, 17:48
Zitat:
Du willst einfach nicht in Objekten bzw. Klassen denken.
Muss ich mir angewöhnen.

Danke für dein Beispiel.

Werde damit mal Arbeiten .

gruss
  Mit Zitat antworten Zitat
EWeiss
(Gast)

n/a Beiträge
 
#22

AW: ListBox und array

  Alt 14. Mär 2011, 17:53
Doch würde er schon, nur den Aufwand dahin würde er gerne überspringen.
So nach ...ne txt datei einlesen sooo viel Aufwand

alfold
Darum geht es nicht.
Es hat auch nichts mit dem Einlesen der TextDatei zu tun sondern damit
Das in der Liste eingelesenen Array so einfach wie möglich zu bedienen,

Sample!
Hoffe du verstehst jetzt.
Ich klicke in meine ListBox abhängig vom Index (Selektierter eintrag)
Möchte ich 2 Funktionen ausführen.

Delphi-Quellcode:
    SetCTRL(32, ListView1.SelectedItem.SubItems(1), Channel)
    SetINST(ListView1.SelectedItem.SubItems(2), Channel)
verstehst?

Subitem 1 = 18
Subitem 2 = 0

Nicht mehr oder weniger will ich erreichen
Ohne die Datei oder Zeile nochmal parsen zu müssen.

Und so wie es aussieht ist es genau das was Jürgen eingebracht hat.

gruss

Geändert von EWeiss (14. Mär 2011 um 17:56 Uhr)
  Mit Zitat antworten Zitat
alfold

Registriert seit: 29. Jun 2010
Ort: Neustrelitz
393 Beiträge
 
Delphi 7 Enterprise
 
#23

AW: ListBox und array

  Alt 14. Mär 2011, 18:09
jo, und da hast Du uns nicht verstanden.
Egal ob in Listview oder Array oder Record. Einmal einlesen und dann mit den indizen arbeiten. Ein nochmaliges einlesen war auch bei uns nicht vorgesehen.

alfold
  Mit Zitat antworten Zitat
EWeiss
(Gast)

n/a Beiträge
 
#24

AW: ListBox und array

  Alt 14. Mär 2011, 18:15
jo, und da hast Du uns nicht verstanden.
Egal ob in Listview oder Array oder Record. Einmal einlesen und dann mit den indizen arbeiten. Ein nochmaliges einlesen war auch bei uns nicht vorgesehen.

alfold
Ok sehe schon es gibt keine Liste welche den Anforderungen die ich stelle genehm wird.
Daher mache ich es mit einem Dynamischen Array und gut ist.

gruss
  Mit Zitat antworten Zitat
alfold

Registriert seit: 29. Jun 2010
Ort: Neustrelitz
393 Beiträge
 
Delphi 7 Enterprise
 
#25

AW: ListBox und array

  Alt 14. Mär 2011, 18:25
Und so wie es aussieht ist es genau das was Jürgen eingebracht hat.
Warum verwirfst Du diese Idee! Sie ist simpel und einfach umzusetzen und bietet alles was Du willst!

alfold
  Mit Zitat antworten Zitat
EWeiss
(Gast)

n/a Beiträge
 
#26

AW: ListBox und array

  Alt 14. Mär 2011, 18:43
Und so wie es aussieht ist es genau das was Jürgen eingebracht hat.
Warum verwirfst Du diese Idee! Sie ist simpel und einfach umzusetzen und bietet alles was Du willst!

alfold
Weil ich es versucht habe und es nicht das ergebnis liefert was ich mir erhofft habe.

gruss
  Mit Zitat antworten Zitat
Benutzerbild von juergen
juergen

Registriert seit: 10. Jan 2005
Ort: Bönen
1.175 Beiträge
 
Delphi 11 Alexandria
 
#27

AW: ListBox und array

  Alt 14. Mär 2011, 19:59
Hallo Emil,
Zitat von EWeiss:
...
Weil ich es versucht habe und es nicht das ergebnis liefert was ich mir erhofft habe.
...

Da ich nicht weiß was bei dir nicht funktioniert hat hilft dir evtl. das hier noch?
sl.StrictDelimiter := TRUE; Gruss Jürgen
Jürgen
  Mit Zitat antworten Zitat
EWeiss
(Gast)

n/a Beiträge
 
#28

AW: ListBox und array

  Alt 14. Mär 2011, 19:59
Nur nochmal zur Information!
Das wollte ich mir sparen..

Delphi-Quellcode:
type
  TSplitStrArray = array of string;
Delphi-Quellcode:
function Split(const Source, Delimiter: string): TSplitStrArray;
var
  spCount: integer;
  spPos: integer;
  spLength: integer;
  sTemp: string;
  aSplit: TSplitStrArray;

begin
  sTemp := Source;
  spCount := 0;
  spLength := Length(Delimiter) - 1;
  repeat
    spPos := Pos(Delimiter, sTemp);
    if spPos = 0 then
      break
    else
    begin
      Inc(spCount);
      SetLength(aSplit, spCount);
      aSplit[spCount - 1] := Copy(sTemp, 1, spPos - 1);
      Delete(sTemp, 1, spPos + spLength);
    end;

  until False;
  if Length(sTemp) > 0 then
  begin
    Inc(spCount);
    SetLength(aSplit, spCount);
    aSplit[spCount - 1] := sTemp;
  end;

  Result := aSplit;

end;
Delphi-Quellcode:
case LoWord(wp) of
ID_INSTRUMENTLIST:
  begin
    nItem := InstrumentList.ListGetCurSel(lP);
    InstrumentList.ListSelectPlus(lP, nItem);
    tmpStr := Split(InstArrayList[nItem],',');

    SetController(32, StrToInt(tmpStr[1]), Channel);
    SetInstrument(StrToInt(tmpStr[2]), Channel);
    SKAERO_UpdateWindow(lP, False);
  end;

Das hätte man einfacher haben können mit einer Simplen List die Subitems versteht.

gruss
  Mit Zitat antworten Zitat
EWeiss
(Gast)

n/a Beiträge
 
#29

AW: ListBox und array

  Alt 14. Mär 2011, 20:01
Hallo Emil,
Zitat von EWeiss:
...
Weil ich es versucht habe und es nicht das ergebnis liefert was ich mir erhofft habe.
...

Da ich nicht weiß was bei dir nicht funktioniert hat hilft dir evtl. das hier noch?
sl.StrictDelimiter := TRUE; Gruss Jürgen
Schau mal meinen Code..
Das alles wollte ich mir mit einer einfachen Liste sparen die SubItems versteht.
Irgendwie hat mich bis auf dich niemand so recht verstanden.

Das war doch eine ganz einfache Frage ??

gruss
  Mit Zitat antworten Zitat
alfold

Registriert seit: 29. Jun 2010
Ort: Neustrelitz
393 Beiträge
 
Delphi 7 Enterprise
 
#30

AW: ListBox und array

  Alt 14. Mär 2011, 20:43
Das was du willst haben wir schon verstanden.
Nur ne einfache null Lösung aus einer Textdatei Zeile, ohne Aufwand Subitems zu machen gibt es nicht. Woher soll denn auch ein Array oder TStringlist wissen wie wo welche subitems wo wie stehen. Das sogenannte zuordenen in ein Array oder List must Du natürlich selber machen. Wie gross der Aufwand wird hängt davon ab wie viele Trenner du im String selbst benutzt!
Noch mal mein Beispiel:
G:\Musik\PLAYER1\02 Begin.wav=02 Begin;10;0,00;0,00;0;0;0;0;0;1
Ich habe hier als Value, 9 ';' als trenner. Also muss ich beim auslesen auch 9 mal diesen Trenner finden!
Entweder mit Posex (ist nicht gerade effektiv) oder ich lese Value noch mal in eine TStringlist mit DelimtedText und kann nun auf die indizen Über den index zugreifen. Wobei das letztere natürlich einfacher ist.

alfold
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 3 von 4     123 4      


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 03:28 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