Autor Beitrag
nn1234
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 41

WIN XP
Delphi 7
BeitragVerfasst: Mo 28.11.05 14:48 
Hi!
Ich möchte eine Art Datenbank erzeugen, in der ich einzelne Einträge bewerten kann. Die Bewertung läuft allerdings nicht nach zahlen oder Buchstaben, sondern es sind pictures (Sterne, die wenn man drauf klickt sich färben). Diese Bewertung möchte ich jetzt gern speichern und zwar so, dass der User selbst entscheiden kann, wohin er das sichert.
Bis jetzt hatte ich mir das so gedacht, dass ich jedem Ergebnis der Bewertung ein Buchstabe zuordne, den ich dann speichere. Wenn dann nun später ein anderes Formular erscheint, soll dieser Wert automatisch mit geladen werden und es wird wieder zurückgeordnet, d.h. die jedem Buchstabe wird wieder seine Bewertung zugeordnet (mit globalen Variablen...?) nun ausgeben lassen und die Bewertung müsste auf einem anderen Formular zu sehen sein.
Jetzt also meine Frage: geht das überhaupt so und wenn ja, wie? Oder gibt's auch ne elegantere Lösung?
Vielen Dank!
nn


Moderiert von user profile iconChristian S.: Topic aus Delphi Language (Object-Pascal) / CLX verschoben am Mo 28.11.2005 um 18:04
svennissel
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 22



BeitragVerfasst: Mo 28.11.05 14:57 
Die Sterne sind ja Dateien auf der Festplatte oder Datensäte in einer Datenbank. Diese habe einen Namen.
z.B.
1.bmp
2.bmp
3.bmp
4.bmp
5.bmp

nun kannst du bei einer Bewertung von 1 die 1.bmp laden also
...load(pfad + bewertung + '.bmp');

Oder wo ist dein Problem? Das ganze kannst du auch mit Buchstaben oder ganzen Wörtern machen. Aber globale Variablen brauchst du nicht.
nn1234 Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 41

WIN XP
Delphi 7
BeitragVerfasst: Mo 28.11.05 19:02 
Naja, es ist ja so, dass die fünf Sterne zu einer Bewertung nicht fünf verschieden Dateien sind, sonder die selben. wenn ich dann auf den dritten klicke, werden drei von fünf farbig. so sind jetzt praktisch maximal zwei verschiedene Datein verwendet worden, aber insgesamt gibt es ja fünf Möglichkeiten (wieviele Sterne farbig sind). Die möchte ich jeweils abspeichern und später wieder abrufen.
nn
nn1234 Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 41

WIN XP
Delphi 7
BeitragVerfasst: Mo 28.11.05 19:21 
Vielleicht um mein Problem zu vereinfachen:
Mit welchen Befehlen (Syntax...) kann ich Variablenwerte speichern und später wieder abrufen? Ist das überhaupt möglich?

So könnte ich doch jedem Ergebnis einen Wert einer bestimmten Variablen zuordnen und diesen dann speichern. Ich kenne bis jetzt allerdings nur Befehle, mit denen ich beispielsweise aus dem Memo raus speichere, nicht aber Dinge, die auf der Canvas nicht sichtbar sind.
Hab bis jetzt nur mit diesem Befehl gespeichert:

Memo1.Lines.SaveToFile(savedialog1.FileName);

Wenn ich das mit dem Variablenwert auch machen könnte, hätte sich mein Problem geklärt.
nn
Sinspin
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 1335
Erhaltene Danke: 118

Win 10
RIO, CE, Lazarus
BeitragVerfasst: Mo 28.11.05 20:10 
warum speicherst du nicht einfach eine zahl, beispielsweise von 0..10 <- je nachdem wieviele sterne du hast? 0 für gar kein stern gefärbt und 10 für alle sterne.
nn1234 Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 41

WIN XP
Delphi 7
BeitragVerfasst: Di 29.11.05 12:42 
Ist natürlich auch ne Variante. Aber ich weiß nicht, wie ich das mach! :oops: Bin noch nicht so lang bei Delphi.
nn
Sinspin
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 1335
Erhaltene Danke: 118

Win 10
RIO, CE, Lazarus
BeitragVerfasst: Di 29.11.05 22:06 
was eine zahl ist weist du. wie man eine zahl (variable) verwendet weist du auch, du hast sogar schon eine datenbank gebaut wenn ich dich richtig verstehe.
nun möchtest du wissen wie man daten aus einer datei lesen kann oder welche hinein schreiben.
schau dir mal die hilfe zu Read, Write, Blockread, Blockwrite an. auch wenn dann dein compiler (D7/D8/...) irgenwas von unsicherem code faselt sind das noch immer die gängigsten varianten was in eine datei zu bekommen und es wieder heraus zu hohlen.
ansonsten müsstest du dich mal mit XML befassen, was auch eine feine methode zum speichern von daten ist und auch ein bisschen was mit datenbank zu tun hat.

macht es überhaupt noch spass zu programmieren wenn man alle probleme von anderen lößen lässt? *mitnahme mentalität!*

wenn da nun jemand auf deine sternchen clickt sind ja links und unter der maus welche und rechts von ihr. die, die links und unter ihr sind zählst du und merkst dir die zahl. beim neu zeichnen zeigst du dann die gezählten sterne in der einen farbe (art) an und den rest bis zum maximum in der anderen farbe. das ist im grunde genau das gleiche wie bei einer fortschrittsanzeige (ProgressBar) nur das dort die breite der beiden bereiche über Min, Max und Position bestimmt werden.
nn1234 Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 41

WIN XP
Delphi 7
BeitragVerfasst: Mi 30.11.05 17:58 
Sicher macht programmieren mehr Spaß, wenn man die Probleme selbst löst. Die Herangehensweise an sich versuch ich auch größtenteils zu lösen. Doch mein Problem ist, dass ich die Befehle nicht kenne und somit nicht weiß, was überhaupt möglich ist. Ich beschäftige mich jetzt gerade mal zwei Wochen mit Delphi...das "Wissen über Machbarkeit" kommt erst später :lol: ...mit der Zeit und Übung!
Mir geht's also gar nicht darum, wie du vorgehen würdest. Mir gings vor allem darum, welche Befehle du verwenden würdest.
Hab das problem geklärt...Hab gestern früh über Records gelesen :wink:
nn