Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Delphi Abprüfen 2er Editboxen (Listen) und Berechnung Unterschiede (https://www.delphipraxis.net/104614-abpruefen-2er-editboxen-listen-und-berechnung-unterschiede.html)

codevolution89 7. Dez 2007 14:03


Abprüfen 2er Editboxen (Listen) und Berechnung Unterschiede
 
Liste der Anhänge anzeigen (Anzahl: 1)
Hallo Leute,
ich bin relativ neu dabei und lerne gerade in der Schule die Programmierung in Delphi. Nebenbei lerne ich C++ und bin begeistert, Programme zu schreiben, zu testen und zu experimientieren. Da ich relativ am Anfang eines langen Weges stehe und auch viel außerhalb der Schule machen will, wollte ich zur Übung folgendes meistern:
In einem Fußballmanager-Browserspiel werden folgende Daten unter dem Menüpunkt "Spielerkader" gegeben:
Zitat:

Spielerkader: 23 Spieler

Alphons Bollnbach
TSI=1 120, 24 Jahre und 92 Tage alt, schwach in Form
Seine Erfahrung ist katastrophal und seine Führungsqualitäten sind durchschnittlich. [Kopfballstärke]


Amador Rognoli
TSI=12 440, 26 Jahre und 22 Tage alt, passabel in Form
Seine Erfahrung ist schwach und seine Führungsqualitäten sind durchschnittlich. [durchsetzungsstark]

...
Diese Angaben ändern sich eine Woche später, aufgrund des Trainings gehen die TSI Werte hoch oder runter. Das Programm soll die Differenz ausrechnen und in einem Panel (idealerweise in einer gesonderten Textdatei, optimalerweise in einer Tabellengrafik oder Exceldatei, da bei 23 Spielern ein Panel relativ unübersichtlich wäre) die Zuwächse bzw Rückgänge ermitteln.

Nun ist das Problem, dass wir im Unterricht nicht soweit sind, dass wir zwei Editfelder miteinander vergleichen können. Hier wollte ich nun mit eurer Hilfe weiterkommen. Evtl. gibt es ja Projekte / Tutorials o.Ä. die dieses Thema behandeln. Da ich keine Fachausdrücke für diesen Prozess kenne, konnte ich auch nicht effektiv suchen.

PS: Bei der Ausgabe sollte die Form folgendermaßen sein: Name, TSI Veränderung (z.B. +500 oder -300)


Hier mal ein Screenshot, wie ich es mir vorstelle:
siehe Anhang

Danke für die Mühe!
:dp:

Der_Unwissende 7. Dez 2007 17:40

Re: Abprüfen 2er Editboxen (Listen) und Berechnung Unterschi
 
Hi und erstmal Herzlich Willkommen in der DP :dp:

Was Dein Problem angeht, so gibt es verschiedene Ansätze. An sich wäre es ehrlich gesagt eher unüblich, dass man den Inhalt zweier Memo-Felder miteinander vergleicht. Das Problem dabei ist, dass Du den Inhalt erst parsen musst. Ein Memo dient eigentlich nur der Anzeige von Texten, auf die Strings die angezeigt werden kann Du mit der Eigenschaft Lines zugreifen.

Wie gesagt, eigentlich verwendet man nicht direkt Memos. Vielmehr trennt man die eigentlichen Daten von ihrer Repräsentation und greift auf Klassen oder Records zurück. Zu diesen findest Du definitiv Tutorials.
Was Du also einfach machen kannst wäre z.B. ein Record erstellen, dass eben einen Spieler repräsentiert. Ein Record ist dabei eine Datenstruktur, die sich aus mehreren Feldern zusammensetzt. Jedes dieser Felder kann einen eigenen Datentypen haben und Du kannst eben auf die einzelnen Felder zugreifen.

Als Beispiel:
Delphi-Quellcode:
type
  TErfahrung = teKatastrophal, teDurchschnittlich, //...

  TSpieler = record
    alter: Cardinal;
    Tsi: Cardinal;
    Erfahrung: TErfahrung;
    //...
  end;
Neue Spieler lassen sich mit New erzeugen (der Speicher muss dann mit Dispose wieder frei gegeben werden). Wie man Records erzeugt, freigibt, verwendet und eben auch in Dateien abspeichert, dazu gibt es gute Tutorials.
Was die Anzeige der Differenzen angeht, so solltest Du nach TChart (und zugehörigen Tutorials) suchen. Ein solches kann eben Diagramme darstellen und z.B. auch in Form von Bitmaps abspeichern (Du hättest also ein Bild pro Diagramm).

Gruß Der Unwissende


Alle Zeitangaben in WEZ +1. Es ist jetzt 19:46 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