Seite 1 von 1

(NOCH) unbekannte Bilder an Programm übergeben

Verfasst: 30. September 2010 12:50
von Cascoin
Hallo die Herren,

ich schreib grad ein Spiel und bin an einer Stelle an der ich nicht weiter komme....

Und zwar habe ich Daten im Programm, die ich auf der Festplatte speichern möchte und von dort aus beim Programmstart auch wieder laden möchte.

Es geht um das laden von Bildern. Dazu bräcuhte ich eben die Bildernamen. Jetzt weiß ich allerdings noch nicht wieviele Bilder es werden bzw. ob später noch einige dazukommen von denen ich den Namen nicht weiß.

Am liebsten wäre es mir so:

Derjenige der das Spiel benutzt kann auch Bilder hinzufügen oder löschen wobei da der Name frei wählbar ist.
Das ganze speichert der Spieler dann in einer Datei die das eigentliche Spiel kennt.

Das Spiel läd jetzt automatisch alle in dieser Datei gespeicherten Bilder.

Ich weiß nicht wie das geht leider..... Bracht man da eine Datenbank?
Bzw. geht das mit einer .txt File? Weiß da jemand in welches Thema ich mich einlesen muß bzw. ob es ein example für eine solche Situation gibt?

vielen Dank soweit.

Mfg Cascoin

Re: (NOCH) unbekannte Bilder an Programm übergeben

Verfasst: 30. September 2010 13:00
von franzf
Cascoin hat geschrieben:Bracht man da eine Datenbank?
Bzw. geht das mit einer .txt File?
Du brauchst keine Datenbank. Und wenn alle Bilder in dem Verzeichnis berücksichtigt werden sollen brauchst du nichtmal eine Datei!
Du brauchst nur
*) QDir
*) QDir::entryList() (oder entryInfoList())
*) QImageReader::imageFormat() (prüfen ob die Datei ein (ladbares) Bild ist).
Und wenn du ganz lieb zu deinem User sein willst, legst du einen QFileSystemWatcher auf das Verzeichnis mit den Bildern, dann kann der da während das Programm läuft Bilder einfügen und du kannst darauf reagieren.

Verfasst: 30. September 2010 13:10
von Cascoin
ah ja...... cool......Ja das wer ich mir genauer angucken.....

Jetzt ist es aber so das immer 2 Bilder zusammen gehören und dann noch 10 Koordinaten auf den jeweiligen Bildern. Das muss alles gebündelt sein.

Die Frage ist nur wie???????


Danke soweit für die Antwort.

Mfg Cascoin

Verfasst: 30. September 2010 13:37
von franzf
Immer schön, wenn nachträglich noch zusätzliche Anforderungen dazukommen. Egal.
Die Bilderpaare könnte man mit passenden Namen als zusammengehöred markieren, die Koordinaten (vor allem wenn sich diese später mal ändern) kaum.
Die schönste Lösung wäre ein XML, aber auch ein einfaches .csv würde gehen, musst dir halt eine Regel einfallen lassen.
ABER: Das ist eine Sache, die der User nur noch schwer manuell pflegen kann. Eine Gui zum Hinzufügen von Bildern wäre fast nötig. Dann kann er zwei Bilder hinzufügen, die 10 Punkte mit der Maus markieren, und du speicherst dann die Bilder und alle nötigen Infos in einer Datei.

Textdateien speichern? -> QFile + QTextStream
.csv? z.B.:

Code: Alles auswählen

bild1.jpg;10:12;13:15;
bild2.jpg;5:2;0:0;
Zwei aufeinanderfolgende Zeilen bilden ein Bildpaar. Alle Werte sind mit ";" getrennt. An erster Stelle steht der Dateiname, dahinter folgen x:y-Paare für die Koordinaten.

Wenn jetzt nicht noch andere Anforderungen kommen, denke ich ist das die einfachste Lösung.

Verfasst: 30. September 2010 13:46
von Cascoin
Servus Franz....

hast du ganz genau richtig verstanden was ich machen möcht....

Tausend dank dir.....

Aber so wie ich es verstehe würdest du am ehesten ein Fenster programmieren und dann das als Schnittstelle zur Kommunikation mit einer .txt Datei hernehmen oder?

jetzt probiers ich erstmal selber weiterzumachen...

.

bis denn Andi

Verfasst: 30. September 2010 16:03
von upsala
Event. könntest du deine daten auch einfach mit QSettings speichern.