Entwickler-Ecke
Sonstiges (.NET) - C# Rangliste
Xclusive - So 12.12.10 19:54
Titel: C# Rangliste
Ich will für mein Spiel "Schiffeversenken" eine Rangliste einbauen.
Wie soll ich das ganze speichern? (Will es erstmals nur lokal machen)
Mit einer XML-Datei?
Und in was soll ich das ganze dann Anzeigen? (Gibts da eine Tabelle?)
Sollte 3 Spalten haben: Rang Name Wertung
Mit freundlichen Grüßen
Yogu - So 12.12.10 23:22
Wahrscheinlich kommt wieder gleich jemand mit Datenquellen und LINQ und so, aber ich wage es trotzdem mal, eine ganz einfache Implementierung für die Anzeige vorzuschlagen: Erstelle ein
ListView, wähle
Details als Anzeigemodus aus und erstelle die drei Spalten. Beim Laden der Highscore gehst du alle Daten (die du in einer
List<HighScoreItem> gespeichert hast) durch und fügst der Reihe nach die Einträge in die ListView ein:
C#-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9:
| listView.BeginUpdate(); try { for (int i = 0; i < highScore.Count; i++) { HighScoreItem item = highScore[i]; listView.Items.Add(new ListViewItem(new String[] { i.ToString(), item.Name, item.Score }); } } finally { listView.EndUpdate(); } |
Das
listView.BeginUpdate sorgt dafür, dass der Einfügeprozess schneller und flüssig abläuft.
Xclusive - Mo 13.12.10 19:03
Yogu hat folgendes geschrieben : |
Wahrscheinlich kommt wieder gleich jemand mit Datenquellen und LINQ und so, aber ich wage es trotzdem mal, eine ganz einfache Implementierung für die Anzeige vorzuschlagen: Erstelle ein ListView, wähle Details als Anzeigemodus aus und erstelle die drei Spalten. Beim Laden der Highscore gehst du alle Daten (die du in einer List<HighScoreItem> gespeichert hast) durch und fügst der Reihe nach die Einträge in die ListView ein:
C#-Quelltext 1: 2: 3: 4: 5: 6: 7: 8: 9:
| listView.BeginUpdate(); try { for (int i = 0; i < highScore.Count; i++) { HighScoreItem item = highScore[i]; listView.Items.Add(new ListViewItem(new String[] { i.ToString(), item.Name, item.Score }); } } finally { listView.EndUpdate(); } |
Das listView.BeginUpdate sorgt dafür, dass der Einfügeprozess schneller und flüssig abläuft. |
Vielen Dank!
Sowas hab ich für den Anfang gesucht.
Später kann man das ganze erweitern, mit einer globalen Rangliste usw.
Aber für den Anfang ist das perfekt.... : )
Noch eine Frage: Werden die Daten beim beenden gelöscht oder bleiben die da?
MfG
Yogu - Mo 13.12.10 19:15
Die Daten sind ja in Objekte gespeichert, die im Arbeitsspeicher abgelegt werden. Natürlich werden die bei Programmende freigegeben.
Wie man sie dauerhaft speichert hat
huuuuuh ja schon gepostet.
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2026 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!