Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Highscore sortieren (https://www.delphipraxis.net/29900-highscore-sortieren.html)

Listener666 16. Sep 2004 11:40


Highscore sortieren
 
Habe ein Programm in dem in einer Listbox eine Highscore angezeigt wird und zwar so:
Punkte (3-Stellig) Name Datum.
Wie schaffe ich es jetzt das Feld so zu sortieren, dass die höchste Zahl oben steht? Die Zahlen habe ich schonmal so formatiert, dass sie immer ein 3-steliges Ergebnis haben:
001
025
132 usw.

Danke schonmal!

Matze 16. Sep 2004 11:42

Re: Highscore sortieren
 
Schau dir mal die Eigenschaft "Sorted" der ListBox an. ;)

Listener666 16. Sep 2004 11:48

Re: Highscore sortieren
 
Die fängt aber beim kleinsten Ergebnis an, somit hätte ich nen Lowscore, was mich nur bedingt weiterbringen würde... Hab ich aber auch schon alles versucht...

Ultimator 16. Sep 2004 12:18

Re: Highscore sortieren
 
Such doch mal im Forum und besonders in der Code-Library nach "Sortierverfahren"

[edit] Und schau dir mal die Tutoriale-Sparte genauer an ;-) [/edit]

alcaeus 16. Sep 2004 12:20

Re: Highscore sortieren
 
Hi Listener666,

http://www.delphipraxis.net/internal...ct.php?t=23835
Ist zwar für eine ListView, aber IMHO macht eine Listview für einen Highscore auch mehr Sinn (Anzeige mehrerer Spalten [Name/Highscore]) :zwinker:

Greetz
alcaeus

Listener666 16. Sep 2004 17:25

Re: Highscore sortieren
 
Ich find ne LisBox auch net so toll, aber unser Lehrer wollte das halt so... gibts net sowas wie sorted- rückwärts? Weil mit Sortierverfahren voll aufwendig ist für sowas einfaches...

gordon freeman 16. Sep 2004 17:57

Re: Highscore sortieren
 
Du kannst sie ja sortieren, von unten an in eine Stringlist schreiben und dann " richtig herum" wieder in die Listbox packen.

Schneider-Huetter 16. Sep 2004 18:30

Re: Highscore sortieren
 
Liste der Anhänge anzeigen (Anzahl: 1)
die gleiche Idee hatte ich auch, das könnte dann so oder so ähnlich aussehen:

Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var i : Integer;
begin

// zuerst sortieren
ListBox1.Sorted := True;

ListBox1.Sorted := False;

// und dann umgekehrt wieder einfügen

For i := 0 to ListBox1.Count-1 do
 Begin
  ListBox1.Items.Insert(i, ListBox1.Items.Strings[ListBox1.Count-1]);
  ListBox1.Items.Delete(ListBox1.Count-1);
 End;

end;
Da hatte sich noch ein kleiner Leichtsinnsfehler eingeschlichen, jetzt sollte's in Ordnung sein.

Listener666 17. Sep 2004 15:30

Re: Highscore sortieren
 
Habs jetzt mal ausprobiert und finds richtig gut. Aber eine frage hätte ich noch, kann ich irgendwie erreichen, dass er mehrere Listboxes auf einmal sortiert? Es gibt nämlich 6 Tabsheets und in jedem ist eine Listbox als Highscore für die versch. Schwierigkeitsgrade. Muss ich dann für jede Listbox das schreiben oder kann ich die irgendwie alle sortieren?

Ultimator 17. Sep 2004 15:42

Re: Highscore sortieren
 
Probiers mal mit Delphi-Referenz durchsuchenfindcomponent. Wenn deine Listboxen ListBox1 .. ListBox6 oder zumindest hintendran eine fortlaufende Zahl haben, müsste das eigentlich ganz leicht zu lösen sein.


Alle Zeitangaben in WEZ +1. Es ist jetzt 07:54 Uhr.
Seite 1 von 2  1 2      

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