Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Neuen Beitrag zur Code-Library hinzufügen (https://www.delphipraxis.net/33-neuen-beitrag-zur-code-library-hinzufuegen/)
-   -   Delphi Datumleiste in StringGrid (https://www.delphipraxis.net/186263-datumleiste-stringgrid.html)

jonrot1906 18. Aug 2015 22:23

Datumleiste in StringGrid
 
Hallo,
zunächst erst einmal Entschuldigung für die banale Frage, jedoch bin ich noch Delphi-Beginner.
Ich möchte gern ein Programm schreiben, welches ggf. in einem StringGrid in der erste Zeilen das Datum ab dem heutigen Tag anzeigt und dem Datum dann auch Daten zugeordnet werden können. Eine andere Lösung wäre das Anzeigen von den zugeordneten Daten zum Datum aus dem TDateTimePicker. Ich habe mir überlegt das Problem mit dem StringGrid mithilfe einer Schleife zu lösen, einen Quelltext habe ich aber noch nicht wirklich zustande gekriegt. :pale:

Könnt ihr mir vielleicht Anregungen/Lösungsansätze geben und mich in die richtige Richtung leiten?

Schon jetzt vielen Dank für eure Antworten.

Mit freundlichen Grüßen,

jonrot1906. :)

Perlsau 19. Aug 2015 01:11

AW: Datumleiste in StringGrid
 
Was soll man auf so eine Anfrage antworten? Was du schreibst ist derart allgemein gehalten, da zumindest ich nicht weiß:
  1. Willst du wissen, wie man mit einem StringGrid umgeht?
  2. Was für ein Programm möchtest du denn wirklich schreiben?
  3. Was hast du denn bisher versucht, um dein Problem zu lösen?
  4. Was erwartest du als Antwort? Quelltext?
  5. Wie ist dein Kenntnisstand: Was hast du denn bereits an Programmen fertiggestellt?
Dein Text läßt noch mehr Fragen offen, doch sollte das wohl für den Anfang genügen.

hoika 19. Aug 2015 03:19

AW: Datumleiste in StringGrid
 
Hallo,

Grid.Cells[0,0]:= DateToStr(Date);

mal so als Ansatz.

Heiko

jonrot1906 19. Aug 2015 21:03

AW: Datumleiste in StringGrid
 
Zunächst erst einmal danke @hoika und auch danke dir @perlsau für eure schnelle Antwort. Der grundlegende Umgang mit einem StringGrid ist mir in sofern bekannt, dass ich bereits ein StringGrid füllen kann und die Größe und Farbe des StringGrids/der Zellen festlegen kann. Wie du siehst bin ich noch nicht sehr weit.
Weiterhin möchte ich ein Programm schreiben, welches durch ein Interface/einen Digital In Anschluss eine Spannung oder eine logische 0/1 liefert. Durch diese soll mithilfe eines Timers ein Wert hochgezählt werden. Das alles habe ich schon hingekriegt. Jetzt soll dieser Wert, welcher ab einem bestimmten Anfangspunkt ja logischerweise immer weiter hochgezählt wird, mit Datum und Uhrzeit in eine Tabelle geschrieben werden oder einem Datum in der Tabelle zugewiesen werden. Das stellt für mich gegenwärtig das Problem dar. Allerdings habe ich mir überlegt, dass Datum mit der Uhrzeit und den Wert zusammen zu erfassen und in eine Textdatei zu schreiben. Nicht die eleganteste Lösung. Deswegen meine Frage.
In dieser Beschreibung habe ich ja auch schon weitestgehend dargelegt, was ich bisher versucht habe. Eine weitere Idee von mir wäre, wie schon im ursprünglichen Fragetext geschrieben, eine Schleife zu verwenden, welche das Datum immer hochzählt.
Eine Antwort wäre beispielsweise ein Hinweis, wie ich es machen könnte. Ich erwarte keinesfalls einen Quelltext.
Mein Kenntnisstand liegt nicht sehr hoch, ich habe bis jetzt nur in der Schule an Projekten gearbeitet, die etwas einfacher sind. Allerdings habe ich nun auch Delphi zu Hause entdeckt und möchte gern auch hier programmieren. Ich habe die Beginner-Grundlagen drauf, viel mehr aber auch nicht.

Mit freundlichen Grüßen,

jonrot1906.

Perlsau 20. Aug 2015 00:08

AW: Datumleiste in StringGrid
 
Zitat:

Zitat von jonrot1906 (Beitrag 1312790)
Der grundlegende Umgang mit einem StringGrid ist mir in sofern bekannt, dass ich bereits ein StringGrid füllen kann und die Größe und Farbe des StringGrids/der Zellen festlegen kann. Wie du siehst bin ich noch nicht sehr weit.

TStringGrid dient eigentlich nur der Darstellung von Daten, nicht jedoch der Speicherung. Guter Programmierstil trennt stets die Datenverarbeitung von der Datendarstellung, weil man ansonsten in Teufels Küche gerät.

Zitat:

Zitat von jonrot1906 (Beitrag 1312790)
Weiterhin möchte ich ein Programm schreiben, welches durch ein Interface/einen Digital In Anschluss eine Spannung oder eine logische 0/1 liefert. Durch diese soll mithilfe eines Timers ein Wert hochgezählt werden. Das alles habe ich schon hingekriegt.

Und wo kann man sich diesen Code einmal anschauen? Du erwartest doch jetzt nicht, daß jemand aus dem Forum bei dir zu Hause auftaucht, um mal zu sehen, worum's eigentlich geht, oder? Das könntest du dir bzw. dem Reisenden ersparen, indem du deinen Code einfach hier postest. Wenn du ihn reinkopiert hast, selektierst du deinen Code und drückst den Button mit dem Helm. Dadurch wird der Code von den sog. Delphi-Tags umrahmt, was ihn leichter lesbar macht. Ach ja: Einrückungen (Codeformatierung) nicht vergessen.

Zitat:

Zitat von jonrot1906 (Beitrag 1312790)
Jetzt soll dieser Wert, welcher ab einem bestimmten Anfangspunkt ja logischerweise immer weiter hochgezählt wird, mit Datum und Uhrzeit in eine Tabelle geschrieben werden oder einem Datum in der Tabelle zugewiesen werden.

Also was jetzt: Du startest einen Timer, fragst meinetwegen jede Sekunde deinen Inline-Anschluß ab, speicherst diesen Wert zusammen mit dem Datum der Abfrage? Oder du hast eine Datumsliste, die du abarbeitest, wobei bei Erreichen des jeweils nächsten Zeitpunkts dein Anschluß abgefragt wird?

Zitat:

Zitat von jonrot1906 (Beitrag 1312790)
Das stellt für mich gegenwärtig das Problem dar.

Was soll das werden? Ein Ratespiel? Welches Problem hast du denn damit?

Zitat:

Zitat von jonrot1906 (Beitrag 1312790)
Allerdings habe ich mir überlegt, dass Datum mit der Uhrzeit und den Wert zusammen zu erfassen und in eine Textdatei zu schreiben. Nicht die eleganteste Lösung. Deswegen meine Frage.

Also doch ein Ratespiel: Welche Frage?

Zitat:

Zitat von jonrot1906 (Beitrag 1312790)
In dieser Beschreibung habe ich ja auch schon weitestgehend dargelegt, was ich bisher versucht habe.

Sorry, ich kann's mir nichtmal annähernd vorstellen und sehe auch dann, wenn ich die Augen ganz fest schließe und mich mordsmäßig anstrenge, noch immer nicht deinen Quellcode. Ist der vielleicht top secret? Ich würde dir hier zu widersprechen wagen und behaupten, du hast nebelhaft angedeutet, was du bisher versucht hast und ebenso, was du eigentlich erreichen willst.

Zitat:

Zitat von jonrot1906 (Beitrag 1312790)
Eine weitere Idee von mir wäre, wie schon im ursprünglichen Fragetext geschrieben, eine Schleife zu verwenden, welche das Datum immer hochzählt.

Jetzt verstehe ich gar nichts mehr, was von "nichts verstehen" ausgehend schon fast eine unmögliche Steigerung ist: Wieso mußt du ein Datum hochzählen? Das aktuelle Datum kannst du doch jederzeit mit der Variablen Now abrufen.

Zitat:

Zitat von jonrot1906 (Beitrag 1312790)
Eine Antwort wäre beispielsweise ein Hinweis, wie ich es machen könnte.

Wie du was machen könntest? Das Datum hochzählen? Den Port der was auch immer (Eingang der Soundkarte vielleicht?) oder die Anzahl der Abfragen hochzählen?

Zitat:

Zitat von jonrot1906 (Beitrag 1312790)
Ich erwarte keinesfalls einen Quelltext.

Ich dagegen schon :roll: ... und ein paar andere vermutlich auch :wink:

Zitat:

Zitat von jonrot1906 (Beitrag 1312790)
Mein Kenntnisstand liegt nicht sehr hoch, ...

Den Eindruck habe ich ebenfalls, immerhin stimmen wir darin überein :thumb:

Zitat:

Zitat von jonrot1906 (Beitrag 1312790)
... ich habe bis jetzt nur in der Schule an Projekten gearbeitet, die etwas einfacher sind. Allerdings habe ich nun auch Delphi zu Hause entdeckt und möchte gern auch hier programmieren. Ich habe die Beginner-Grundlagen drauf, viel mehr aber auch nicht.

Also das mit den Beginner-Grundlagen bezweifle ich, nichts für ungut – du hast vielleicht ein paar Anfänger-Kenntnisse gesammelt. Was sind denn überhaupt die Beginnergrundlagen? Das was dein Lehrer dir begebracht hat? Das hört sich wie eine berühmt-berüchtigte Definition an: Die Beginner-Grundlagen, das sind sie, hier könnt ihr sie sehen in ihrer Herrlichkeit, und wenn ihr sie beherrscht, dann könnt ihr programmieren.

Wie wär's damit? Erstmal ein paar Wochen oder Monate lang (je nachdem, wieviel Freizeit du täglich erübrigen kannst) einige der zahlreich im Netz zu findenden Anfänger-Tutorials durchzuarbeiten. Dabei würdest du vermutlich schnell feststellen, daß du die Anfänger-Grundlagen noch nicht wirklich draufhast.

p80286 20. Aug 2015 02:59

AW: Datumleiste in StringGrid
 
Ich hab es so verstanden, daß Du an einer Schnittstelle einen Wert empfängst, und Du diesen protokollieren willst. Dafür ist die von Dir angedachte Datei ideal geeignet. Zusätzlich könntest Du z.B. die letzten 20 Werte mit Hilfe eines Stringgrids anzeigen. Hierfür mußt Du aber keine Datums/Zeitwerte generieren, sondern nur die vorhandenen Werte anzeigen.

Gruß
K-H


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