![]() |
Array timer, stringgrid hilft mir
Liste der Anhänge anzeigen (Anzahl: 1)
Hallo Zusammen,
ich war in den letzten Informatikstunden auf Einstellungstest und hänge somit ein gutes Stück hinter den andern, Und zu meiem Entsetzen schreiben wir Montag eine Arbeit und was kann ich? NICHTS!!! deshalb brauch ich dringens eure hilfe die Arbeit besteht aus Timer Arrays StringGrid Schleifen manipulation von Zeichenketten sie soll auf dem Nieveau wie folgt aufgebaut sein ... 1.Ein von Ihnen geschriebenes Programm nimmt die Temperaturen auf, die in einem Kühlhaus gemessen werden. Es sollen lediglich die letzten 60 Messwerte in einem dafür geeigneten Array gespeichert und in einem StringGrid angezeigt werden. Die Messwerte liegen im Bereich von -25,00 bis -15,00 Grad Celsius und sollen durch die Generierung von Zufallszahlen simuliert werden (2 Stellen hinter dem Komma genau). Pro Sekunde soll ein Messwert generiert, in einem Array abgespeichert und in einem StringGrid angezeigt werden d.h. pro Sekunde erhöht sich die Zeilenanzahl des StringGrids um 1. Sind 60 Messwerte aufgenommen und angezeigt, beginnt das StringGrid wieder mit der ersten Zeile. In der nachfolgenden Abbildung wurden 8 Messwerte in einer Zeitspanne von 8 Sekunden aufgenommen. In der ersten Spalte des StringGrids wird die Messwertnummer (Werte von 1 bis 60) angezeigt, in der zweiten aktuelles Datum und aktuelle Uhrzeit und in der dritten Spalte der Messwert. Nach jedem Hinzufügen eines Messwertes werden Minimum, Maximum und Mittelwert der bisher aufgenommenen Messwerte aktualisiert (siehe Abbildung). Der Mittelwert soll auf 2 Stellen hinter dem Komma gerundet werden. Mit den Schaltern „Überwachung starten“ bzw. „Überwachung stoppen“ kann die Aufnahme der Messwerte gestartet bzw. gestoppt werden. ich könnt grad :kotz: :kotz: :kotz: |
Re: Array timer, stringgrid hilft mir
Und wo ist das Problem? Wünschst du dir etwa, dass dir jemand hier deine "Hausaufgaben" macht und dir so ein Programm schreibt?
Im Grunde starten und stoppen die beiden Buttons einen TTimer (1000ms Intervall), welcher im "OnTimer"-Event einfach 'ne Zeile an das TStringGrid hängt. Die Delphi-Hilfe sollte dir auch zeigen wie das alles geht, wenn du nach den Stichworten suchst. ;) Alle Stichworte, mit denen du die Foren-Suche, Delphi-Hilfe und Google bedienen kannst, hast du doch selber schon genannt. |
Re: Array timer, stringgrid hilft mir
Nicht :kotz: lernen
Mfg. |
Re: Array timer, stringgrid hilft mir
opa auf solche kommentare kann ich echt verzichten,
NEIN es soll mir keine meine Hausuafgaben machen so soll unsere Arbeit aussehn und ich weiß echt nicht wie ich anfangen soll da ich durch die scheiß EInstelungstest nur noch Bahnhof verstehe |
Re: Array timer, stringgrid hilft mir
Fang doch damit an, Dir Gedanken darüber zu machen, wie das Array auszusehen hat. Mir fallen da ganz spontan 2 Möglichkeiten ein:
1. ein dynamisches Array, bei dem Du halt die Länge auf 60 überprüfen musst. 2. ein statisches Array of record. Der Record enthält den Messwert sowie eine Kennung, ob dieser Wert gemessen wurde. Bei weiteren Schwierigkeiten bitte den bisherigen Quellcode posten und konkrete Fragen stellen. |
Re: Array timer, stringgrid hilft mir
Ich werde dir ned die Aufgabe machen, sondern dir mal paar Tipps geben, damit du auch selbst siehst, wie man es macht:
Als erstes, jede Sekunde ein Messwert -> du brauchst einen Timer. stelle Intervall auf 1sekunde ( = 1000 ms ) Im OnTimer ereignis wirst jetzt eine Funktion schreiben. Schauen wir uns dann mal die Beschränkung auf 60 Einträge an. Die werden zyklisch geschrieben. d.h. du brauchst ne globale Variable, die dir sagt, in welche Zelle du schreiben kannst. Wir nehmen am besten dazu Index der Zelle. d.h. wir intialisieren im onCreate diese Variable mit 1. Nennen wir sie J. Jedesmal, wenn du Datensatz schreibst ( also im OnTimerEvent ), musst halt folgende Dinge machen: Datensatz generieren Datensatz in Tabelle schreiben, dabei achten, ob Zeilen genug. J inkrementieren und auf Grenze "60" achten. Min/Max/Durchscnitt beachten Punkt Datensatz generieren. Der Zufallsgenerator muss zwischen -15,00 und -25,00 was berechnen. zwei Stellen genau. d.h. du brauchst ein random(1000). Genauer gesagt ist deine Temperatur: random(1000)/100-25; In Tabelle schreiben dürfte ned schwer werden. Schaust halt, ob J>= Stringgrid.rowcount. Falls ja, fügst neue Zeile hinzu. J inkrementieren... ... J := J+1 oder Inc(J); Die 60er Grenze muss beachtet werden. Da wir bei 1 anfangen ist letzter gültige Wert die 60. Machst einfach ne Zeile rein: if J > 60 then J := J -60; Min/Max/Durchschnitt Gehst am besten jedesmal alle 60 Zeilen durc, dabei zwei variablen, die sich max/min wert merken. auf dritte summierst alle Werte und teilst am Ende durch 60. Nun aufnahme starten/stoppen. Einfach Timer.Enabled := true/false; Hoffe, du hats Vorstellung bekommen, was und wie du programmieren solltest. |
Re: Array timer, stringgrid hilft mir
ich gebe jetzt auch nochma meinen senf dazu ;)
wobei ich einen leicht anderen lösungsweg gehen würde. ich würde die messwerte in einem array speichern und nur zur ausgabe in das stringgrid schreiben. erstens is das (meiner meinung nach) bequemer und zweitens steht in der aufgabenstellung ja auch, dass ihr arrays verwenden sollt. du kannst einen globalen array von fließkomma werten erstellen und dort dort die messwerte dann später speichern.
Delphi-Quellcode:
im ontimer event vom timer spielt sich dann alles ab (die beiden knöppe stellen timer.enabled nur auf true bzw false - an/aus).
Messwerte: array of Double;
hier prüfst du halt ob du schon 60 messwerte hast. dann mußt du ja von vorne anfangen (soweit ich das verstanden hab). wenn du 60 werte erreicht hast setzt du einfach die größe vom array auf 0. dadurch sind dann alle alten messwerte weg.
Delphi-Quellcode:
hier sollte man dann evtl noch die zeilen anzahl des stringgrids wieder zurücksetzen (sieht vll besser aus ^^).
if length(Messwerte) >= 60 then
begin setlength(Messwerte, 0); ... end; danach holst du dir einen messwert vom zufallsgenerator
Delphi-Quellcode:
hierdurch erhälst du messwerte im bereich von -25 bis -15 (der zufalls generator gibt eine ganzzahl zwischen -1500 und -2500 aus z.B. -1813. diese wird dann durch 100 geteilt. so bekommste dann z.B. -18,13).
randomize; //zufallsgenerator initialisieren
messwert := RandomRange(-1500, -2500) / 100; dann erweiterst du deinen messwerte array um ein element(mit setlength) und speicherst in dem neuen feld deinen aktuellen messwert
Delphi-Quellcode:
high(Messwerte) gibt das höchste element (in diesem fall das neu angefügte) des arrays an.
setlength(Messwerte, length(Messwerte)+1);
Messwerte[high(Messwerte)] := messwert; length(Messwerte) gibt die gesamt länge an. da dynamische arrays von 0 zu zählen beginnen ergibt bei einem array mit z.B. 20 element length(Messwerte) = 20, jedoch high(Messwerte) = 19 dann erweiterst du dein stringgrid um eine reihe und schreibst deinen messwert in die entsprechende celle. das aktuelle datum kriegst du so
Delphi-Quellcode:
da du das ganze nun in einem array hast kannste bequem fertige delphi funktionen benutzen um das minimum/maximum zu ermitteln.
DateTimeToStr(now);
Delphi-Quellcode:
nur den durchschnitt mußte meines wissens von hand ausrechnen.
minimum := MinValue(Messwerte);
maximum := MaxValue(Messwerte); du läufst einfach in einer schleife deinen array durch (von 0 bis high(Messwerte)) addierst da alle werte. danach teilst du diese summe durch die anzahl messwerte (length(Messwerte)) danach kannste dann einfach die werte in die 3 editboxen speichern
Delphi-Quellcode:
die beschriftung von dem stringgrid wirste ja wohl hinkriegen, ne? ;)
edit1.Text := FloatToStr(minimum);
edit2.Text := FloatToStr(maximum); edit3.Text := FloatToStr(durchschnitt); als hilfe: Stringgrid1.Cells[spaltenindex, zeilenindex] := 'Ein String'; |
Re: Array timer, stringgrid hilft mir
OK, das mit Array hab ich mir gespart gehabt. Mein Fehler.
Nur: In deiner Methode löschst du die Messwerte, sobald man 60 hat. Ich glaube, man sollte nicht alle löschen, sondern den ältesten drch neuen ersetzen, damit man nach einer Minute stets 60 Messwerte hat. Und halt für die letzte Minute Art Statistik hat mit Min, Max und Durchschnitt. ich würde da halt ein statisches Array der Länge 60 nehmen und ne index variable, die man im kreis laufen lässt. *edit: Als Tipp für Beschriftung des Stringgrid und einfügen der Messwerte: FloatToStrF ( achte auf das letzte F. die Delphi Doku hilft dann mit den Parametern ) |
Re: Array timer, stringgrid hilft mir
Zitat:
|
Re: Array timer, stringgrid hilft mir
Zitat:
|
Re: Array timer, stringgrid hilft mir
ich verzweifel noch !!!
ich hab jetzt versucht die scheiße do zumchen un was geht gar nix holt das scheiß array un werft es in de tone ich versteh gar nix einfach der letzte scheiß is das array do tabelle un timmer han ich mir beigebracht aber array verisst es ich werd am beste moin nach der 4 stund krank dann muss ich die arbeit ent schirebn so :pale: sry my ausdrucksweise aber ich bin genervt von dem scheiße |
Re: Array timer, stringgrid hilft mir
Blöde Frage: Du weißt aber, was ein Array ist?
|
Re: Array timer, stringgrid hilft mir
em mehr oder weniger es soll angellcih zahlen oder so was speichern in einem bestimtm beieich den mann festelgt
aber ich bekomm das nicht angewnandrt =( |
Re: Array timer, stringgrid hilft mir
Vielleicht hilft dir das weiter:
![]() Ist ein Tutorial über Arrays und andere "Komplexe Datentypen". P@Tti |
Re: Array timer, stringgrid hilft mir
du sei mir bitte net böse aber damit komm ich ar nicht zurecht
kannst du mir das vlt in paar einfachen sätzen erklären`? wie das gehen soll?` |
Re: Array timer, stringgrid hilft mir
Dann sag ich mal ganz doof: ein Array ist eine "Kette" von Daten desselben Typs. Hier gibt es 2 Geschmacksrichtungen:
- dynamisches Array: keine festgelegte Größe, diese muss immer wieder neu definiert werden, wenn Elemente hinzugefügt oder gelöscht werden - statisches Array: festgelegte Größe, d.h. es ist von vornherein bekannt, wieviele Elemente enthalten sind In Deinem Fall würde ich ein statisches Array definieren (mit 60 Elementen). Nun hast Du das Problem, dass Du noch nicht weißt, ob alle Elemente bereits gemessen wurden. Also reicht IMHO ein elementarer Datentyp (z.B. double) hier nicht aus. Also ein Ansatz für die Definition eines Datentyps, der als Array-Element dienen soll:
Delphi-Quellcode:
Nun definierst Du das eigentliche Array.
type TElement = record
Messwert: double; //der eigentliche Messwert gemessen: Boolean; //wurde bereits gemessen? Ist von Belang, solange keine 60 Messwerte vorliegen end;
Delphi-Quellcode:
Zum Programmstart setzt Du alle Werte initial auf 0.
var MessArray: array[0..59] of TElement; //60 Elemente, beginnend bei 0
Delphi-Quellcode:
So, wenn der Timer feuert, machst Du Folgendes: Du kopierst (von hinten nach vorn) den Vorgängerwert auf den aktuellen Wert.
FillChar(MessArray, SizeOf(MessArray), 0);
Delphi-Quellcode:
Dadurch rutschen alle Messwerte "nach hinten", und Du kannst den neuen Wert als erstes Element (Index 0) eintragen (dabei das Setzen von "gemessen" nicht vergessen). Nun musst Du das Ganze nur noch in einer weiteren Schleife im StringGrid darstellen (und hierbei wieder auf "gemessen" achten ;)).
for i := High(MessArray) downto Low(MessArray) + 1 do
MessArray[i] := MessArray[i-1]; Ich hoffe, diese Hilfestellung reicht Dir aus. |
Re: Array timer, stringgrid hilft mir
[ROTER KASTEN - ICH POSTE TROTZDEM MAL]
So schwer ist das gar nicht: Zunächst definierst du ein Array:
Delphi-Quellcode:
Dieses Feld speichert jetzt 11 integer-Werte (also Zahlen). Diese einzelnen Zahlen sprichst du mit
MeinArray : array[0..10] of integer
Delphi-Quellcode:
bis
MeinArray[0]
Delphi-Quellcode:
an und kannst dadurch Zahlen-Werte setzen (da du ja ein Integer-Array hast).
MeinArray[10]
Beispiel:
Delphi-Quellcode:
Du besitzt also 11 (von 0 bis 10) integer-Werte, die im Grunde nichts anderes sind als wie wenn du folgendes definieren würdest:
MeinArray[0] := 115;
MeinArray[1] := 234;
Delphi-Quellcode:
Allerdings würde dies bei vielen Werten (60) sehr umständlich und unübersichtlich werden (für dein Vorhaben wäre das beinahe unmöglich)!
Zahl1 : integer;
Zahl2 : integer; Zahl3 : integer; //... Durch die Zahl, die in eckigen Klammern angegeben wird (z.B. [0]) greifst du auf die einzelnen Werte zu. Als kleine Hilfe noch zu deiner Aufgabe: Folgendes definierst du im private-Bereich deiner Form:
Delphi-Quellcode:
Und das brauchst du im Timer-Event:
i : integer;
Messwerte : array[0..60] of Double;
Delphi-Quellcode:
Der Code ist noch nicht ganz vollständig, sollte dir aber schonmal weiterhelfen. Bei Fragen einfach fragen ;-)
Messwerte[i] := random(1000)/100-25;
inc(i); if i > 60 then i := 0; Hoffe, ich konnte etwas helfen P@Tti |
Re: Array timer, stringgrid hilft mir
danke ihr 2 ich frage eh immer
aber wie kann ich amchen das der wie in emier aufgabe bestimmt immer etwas einem arry speicher tut? also ein zufallszahl? |
Re: Array timer, stringgrid hilft mir
Zitat:
|
Re: Array timer, stringgrid hilft mir
Ok, stimmt. Hab in der Schnelle nicht drangedacht ;-)
Müsste also korrekt heißen:
Delphi-Quellcode:
;-)
Messwerte : array[0..59] of Double;
@Feuerwehrmann90: Das Timer-Event in meinem Post vorher macht genau das: Es speichert in das Array den Wert, den random liefert. Random ist die Zufallsfunktion, die einen zufälligen Wert liefert. Damit diese funktioniert musst du z.B. im OnCreate des Forms
Delphi-Quellcode:
aufrufen.
randomize;
random(1000) liefert Werte von 0 - 1000. Dieser Wert wird dann durch 100 geteilt, es entstehen also Werte von 0 bis 10. Anschließend wird von dieser Zahl wiederum 25 abgezogen, dadurch entstehen Werte von -25 bis -15 (so wie in deiner Aufgabe verlangt). P@Tti |
Re: Array timer, stringgrid hilft mir
ja danke so weit hab ich es verstnaden ich meien wie ich eine bestimmte zahl jetzt im ersten aary speicher kann un das in der tabel ausgeb kann?
|
Re: Array timer, stringgrid hilft mir
Das wurde zwar schon gepostet, aber nochmal: Du brauchst 2 Methoden, Randomize (einmalig aufzurufen, initialisiert den Zufallsgenerator) und Random. Sagen wir mal, Du rufst Randomize im OnCreate-Ereignis auf, das reicht. So, nun muss der neue Wert zufällig zwischen -15.00 und -25.00 liegen. Nun könnten wir Random 2 mal aufrufen: mit Range für den Vorkommaanteil und einmal ohne für den Nachkommaanteil. Einfacher wäre es so:
- die Differenz zwischen -25 und -15 beträgt 10, das ist die anzugebende Range. Für die 2 Nachkommastellen multiplizieren wir diese mit 100, kommen also auf 1000. - unser unteres Limit ist 15, multipliziert mit 100 also 1500, das muss dazuaddiert werden. - nun noch das Vorzeichen umdrehen und durch 100 dividieren, dann sollten wir im gültigen Wertebereich landen (wenn ich keinen Denkfehler habe) Übertragen auf mein Beispiel hieße das
Delphi-Quellcode:
[edit] Falsche Dopplung korrigiert [/edit]
var Neuerwert: TElement;
begin Neuerwert.Messwert := -((Random(1000) + 1500) / 100); Neuerwert.gemessen := true; //hier nun die von mir beschriebene Schleife zum Verschieben ... //nun an Stelle 0 einfügen MessArray[0] := Neuerwert; end; |
Re: Array timer, stringgrid hilft mir
sry vlt bin ich blöd aber ich weiß immer noch ent wie ich das speicher kann?
in ne array? |
Re: Array timer, stringgrid hilft mir
Du musst doch nur noch die Codeschnippsel aus #16 und #22 zusammenfügen.
|
Re: Array timer, stringgrid hilft mir
du sry ich bin blöd ssag ruhig ich versth gar nix mehr
P.S. wenn ma uns mla treffe bekommst ein bier von mor ^^ |
Re: Array timer, stringgrid hilft mir
1. Lies bitte Deine Beiträge vor dem Posten noch einmal Korrektur (in der Vorschau)
2. Zeig mal den bisherigen Code. |
Re: Array timer, stringgrid hilft mir
ich han my delphie sachen eben gelöscht da vor lauter ärger, da ich mit array gar net geht =(
sry bin saarländer so wie schreiwe so schwetzte ich *fg* |
Re: Array timer, stringgrid hilft mir
Dann fang nochmal von vorne an, der Code steht ja schon da bis auf die Ausgabe. Es geht ja nicht darum, Dir die Aufgabe zu machen, sondern Dir einen Lösungsansatz aufzuzeigen.
|
Re: Array timer, stringgrid hilft mir
jo danke is klar aber weißt du bei mir is die lust im keller da ich echt null versteh
das jängt alles mit den arrays zummen da ich net weiß wie ich auf die zugreifen kann um die in einer tabelle ausgen soll verstehnd du? |
Re: Array timer, stringgrid hilft mir
Mal anders ausgedrückt: Stell Dir vor, Du hast einen Schrank mit 60 Schubladen (das ist das Array). So, nun willst Du die darin enthaltenen Klamotten der Aktualität nach sortiert haben. Was machst Du nun also, wenn neue Klamotten ankommen? Du öffnest die unterste Schublade und wirfst den Inhalt weg. Dann öffnest Du die Schubade darüber und füllst deren Inhalt in die unterste Schublade. Dann kommt die 3. Schublade von unten. Deren Inhalt kommt in die nun leere vorletzte Schublade. Nun eine Schublade weiter nach oben. Das wiederholst Du solange, bis Du an der obersten Schublade angekommen bist. Hier kommen nun die neuesten Klamotten hinein.
|
Re: Array timer, stringgrid hilft mir
Hallo also soweit bin ich jetzt un ich ka wie es soll weiter gehn
unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, ExtCtrls, StdCtrls, Grids; type TForm1 = class(TForm) SG_ausgabe: TStringGrid; Button1: TButton; Button2: TButton; ED_max: TEdit; ED_mittel: TEdit; ED_min: TEdit; timer: TTimer; procedure Button1Click(Sender: TObject); procedure Button2Click(Sender: TObject); procedure FormCreate(Sender: TObject); private { Private-Deklarationen } public { Public-Deklarationen } end; var Form1: TForm1; i:integer ; implementation {$R *.dfm} procedure TForm1.Button1Click(Sender: TObject); begin i:=1; timer.Enabled:=true; for i:=1 to 60 do SG_ausgabe.Cells[0,i]:=Inttostr(i); SG_ausgabe.RowCount:=i; end; procedure TForm1.Button2Click(Sender: TObject); begin timer.Enabled:=false; end; procedure TForm1.FormCreate(Sender: TObject); begin SG_ausgabe.Cells[0,0]:='Nummer'; SG_ausgabe.Cells[1,0]:='Datum/Zeit'; SG_ausgabe.Cells[2,0]:='Grad Celsius'; end; end. |
Re: Array timer, stringgrid hilft mir
Könntest Du bitte die Delphi-Tags benutzen (Quelltext markieren und auf "Delphi-Code" klicken)? Ist sonst echt schwer zu lesen.
|
Re: Array timer, stringgrid hilft mir
du sryich weiß ent was du meinst oder wo ich das finde soll =(
sry wenn das nur die halbe antwort ist aber ich lkanns net weiter =( |
Re: Array timer, stringgrid hilft mir
unit Unit1;
interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, ExtCtrls, StdCtrls, Grids; type TForm1 = class(TForm) SG_ausgabe: TStringGrid; Button1: TButton; Button2: TButton; ED_max: TEdit; ED_mittel: TEdit; ED_min: TEdit; timer: TTimer; procedure Button1Click(Sender: TObject); procedure Button2Click(Sender: TObject); procedure FormCreate(Sender: TObject); private { Private-Deklarationen } public { Public-Deklarationen } end; var Form1: TForm1; i:integer ; implementation {$R *.dfm} procedure TForm1.Button1Click(Sender: TObject); begin i:=1; timer.Enabled:=true; for i:=1 to 60 do SG_ausgabe.Cells[0,i]:=Inttostr(i); SG_ausgabe.RowCount:=i; end; procedure TForm1.Button2Click(Sender: TObject); begin timer.Enabled:=false; end; procedure TForm1.FormCreate(Sender: TObject); begin SG_ausgabe.Cells[0,0]:='Nummer'; SG_ausgabe.Cells[1,0]:='Datum/Zeit'; SG_ausgabe.Cells[2,0]:='Grad Celsius'; end; end. [delphi] |
Re: Array timer, stringgrid hilft mir
[delphi]unit Unit1;
interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, ExtCtrls, StdCtrls, Grids; type TForm1 = class(TForm) SG_ausgabe: TStringGrid; Button1: TButton; Button2: TButton; ED_max: TEdit; ED_mittel: TEdit; ED_min: TEdit; timer: TTimer; procedure Button1Click(Sender: TObject); procedure Button2Click(Sender: TObject); procedure FormCreate(Sender: TObject); private { Private-Deklarationen } public { Public-Deklarationen } end; var Form1: TForm1; i:integer ; implementation {$R *.dfm} procedure TForm1.Button1Click(Sender: TObject); begin i:=1; timer.Enabled:=true; for i:=1 to 60 do SG_ausgabe.Cells[0,i]:=Inttostr(i); SG_ausgabe.RowCount:=i; end; procedure TForm1.Button2Click(Sender: TObject); begin timer.Enabled:=false; end; procedure TForm1.FormCreate(Sender: TObject); begin SG_ausgabe.Cells[0,0]:='Nummer'; SG_ausgabe.Cells[1,0]:='Datum/Zeit'; SG_ausgabe.Cells[2,0]:='Grad Celsius'; end; end. |
Re: Array timer, stringgrid hilft mir
Geh auf den Beitrag von oben und wähle "edit". Dann markierst Du den Quelltext und drückst oben auf "Delphi-Code".
|
Re: Array timer, stringgrid hilft mir
Delphi-Quellcode:
sry jetzt gehts alle gute dinge sind 3
unit Unit1;
interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, ExtCtrls, StdCtrls, Grids; type TForm1 = class(TForm) SG_ausgabe: TStringGrid; Button1: TButton; Button2: TButton; ED_max: TEdit; ED_mittel: TEdit; ED_min: TEdit; timer: TTimer; procedure Button1Click(Sender: TObject); procedure Button2Click(Sender: TObject); procedure FormCreate(Sender: TObject); private { Private-Deklarationen } public { Public-Deklarationen } end; var Form1: TForm1; i:integer ; implementation {$R *.dfm} procedure TForm1.Button1Click(Sender: TObject); begin i:=1; timer.Enabled:=true; for i:=1 to 60 do SG_ausgabe.Cells[0,i]:=Inttostr(i); SG_ausgabe.RowCount:=i; end; procedure TForm1.Button2Click(Sender: TObject); begin timer.Enabled:=false; end; procedure TForm1.FormCreate(Sender: TObject); begin SG_ausgabe.Cells[0,0]:='Nummer'; SG_ausgabe.Cells[1,0]:='Datum/Zeit'; SG_ausgabe.Cells[2,0]:='Grad Celsius'; end; end. |
Re: Array timer, stringgrid hilft mir
so müsst es aber richitg sein odeRß
ich bin mal 5 min vor da tür firsch lusft schnappe vlt gehts dannacher besser kansnt dir den code ja mal angucke un vlt tipp geben wie ich weiter machen muss danke |
Re: Array timer, stringgrid hilft mir
OK, fangen wir vorne an:
1. i sollte eine lokale Variable sein. 2. die Schleife in Button1Click gehört in das Timer-Event 3. die Definition der Daten und des Arrays fehlen noch. [edit] Mit "Daten" meine ich die Messwerte [/edit] |
Re: Array timer, stringgrid hilft mir
du sry bei uns is es internet zusammen gebroche es ging gar nix mehr un awei bist du off =(
naja kann ma nix machen ich bastel noch bischen dran rum un dann wird es moin schon schief geehn =( danke ann alle besonders an Deddy |
Alle Zeitangaben in WEZ +1. Es ist jetzt 11:30 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz