AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

array auslesen

Ein Thema von eagle86 · begonnen am 6. Nov 2004 · letzter Beitrag vom 9. Nov 2004
Antwort Antwort
eagle86

Registriert seit: 6. Nov 2004
4 Beiträge
 
#1

array auslesen

  Alt 6. Nov 2004, 16:13
Ich möchte den Inhalt eines Arrays in ein Memofeld übertragen. Der Inhalt des Arrays besteht aus einem Record mit Messdaten. Das Array soll maximal 50 Messdatensätze speichern also [1..50]. Ich glaube, dass ich den Inhalt des Records schon richtig auf das Array übertragen habe. Doch nun habe ich das Problem, dass ich ja erstmal das Array auslesen muss und irgendwie in eine Stringvariable schreiben muss, damit ich das überhaupt in das Memofeld übertragen kann. Nur ich habe keine Ahunug wie ich das machen soll.
Wäre über eure Hilfe sehr dankbar!

MfG eagle
  Mit Zitat antworten Zitat
Benutzerbild von alcaeus
alcaeus

Registriert seit: 11. Aug 2003
Ort: München
6.537 Beiträge
 
#2

Re: array auslesen

  Alt 6. Nov 2004, 16:15
Hi eagle86,

erstmal herzlich willkommen in der DP
Ein paar Infos zum Record musst du uns schon geben, sonst können wir nichts genaues sagen. Eins steht fest: die Daten des Records in einen String umwandeln

Greetz
alcaeus
Andreas B.
Die Mutter der Dummen ist immer schwanger.
Ein Portal für Informatik-Studenten: www.infler.de
  Mit Zitat antworten Zitat
Benutzerbild von ibp
ibp

Registriert seit: 31. Mär 2004
Ort: Frankfurt am Main
1.511 Beiträge
 
Delphi 7 Architect
 
#3

Re: array auslesen

  Alt 6. Nov 2004, 16:16
hallo herzlich willkommen bei dp

so wie du sie einliest, kannst du sie doch auch in ein memo schreiben

.. und ein wenig sc wäre angebracht!

[edit]1 sec zu langsam [/edit]
  Mit Zitat antworten Zitat
eagle86

Registriert seit: 6. Nov 2004
4 Beiträge
 
#4

Re: array auslesen

  Alt 6. Nov 2004, 16:29
mein record:
Delphi-Quellcode:
tMessdaten = record
        Datum :string;
        HTemperatur :real;
        TTemperatur :real;
        Niederschlag:real;
        Luftfeuchte :integer;
        Luftdruck :real;
        Windgeschwindigkeit :real;
mein array:
tMessungen = array [1..50] of tMessdaten; Versuch das ganze in das Array einzulesen:
Delphi-Quellcode:
procedure tForm1.EntryMeasure(var aMess : tMessungen; i:integer);
begin
for i:=1 to 50 do
with aMess[i] do
 begin
  datum:=edit1.text;
  Htemperatur:=strtofloat(edit2.text);
  Ttemperatur:=strtofloat(edit3.text);
  Niederschlag:=strtofloat(edit4.text);
  Luftfeuchte:=strtoint(edit5.text);
  Luftdruck:=strtofloat(edit6.text);
  Windgeschwindigkeit:=strtofloat(edit7.Text);
 end;
end;
Naja und nun soll halt der Inhalt des Arrays, wenn denn da überhaupt was drin ist , in ein Memofeld also Maximal 50 Datensätze.
ps: vielen dank für die schnellen antworten
  Mit Zitat antworten Zitat
Benutzerbild von ibp
ibp

Registriert seit: 31. Mär 2004
Ort: Frankfurt am Main
1.511 Beiträge
 
Delphi 7 Architect
 
#5

Re: array auslesen

  Alt 6. Nov 2004, 16:35
array in memo:
Delphi-Quellcode:
procedure tForm1.MeasureToMemo(var aMess : tMessungen);
var i:integer;
begin
  for i:=1 to 50 do
    with aMess[i] do
      Memo1.lines.add(datum+
                      floattostr(Htemperatur)+' '+
                      floattostr(Ttemperatur)+' '+
                      floattostr Niederschlag)+' '+
                      inttostr(Luftfeuchte)+' '+
                      floattostr(Luftdruck)+' '+
                      floattostr(Windgeschwindigkeit));
end;
  Mit Zitat antworten Zitat
eagle86

Registriert seit: 6. Nov 2004
4 Beiträge
 
#6

Re: array auslesen

  Alt 6. Nov 2004, 16:41
Ah super! Jetzt klappt es. Danke!
  Mit Zitat antworten Zitat
Benutzerbild von ibp
ibp

Registriert seit: 31. Mär 2004
Ort: Frankfurt am Main
1.511 Beiträge
 
Delphi 7 Architect
 
#7

Re: array auslesen

  Alt 6. Nov 2004, 16:48
kleiner tipp... schau dir mal tstringgrid an! sollte ideal für deine aufgabe sein! da kannst du die werte direkt bearbeiten und ansehen sieht dann aus wie bei excel!
  Mit Zitat antworten Zitat
KermitFrosch

Registriert seit: 26. Jan 2004
Ort: Hamburg
57 Beiträge
 
#8

Re: array auslesen

  Alt 7. Nov 2004, 13:56
Delphi-Quellcode:
procedure tForm1.EntryMeasure(var aMess : tMessungen; i:integer);
begin
for i:=1 to 50 do
with aMess[i] do
begin
  datum:=edit1.text;
  Htemperatur:=strtofloat(edit2.text);
  Ttemperatur:=strtofloat(edit3.text);
  Niederschlag:=strtofloat(edit4.text);
  Luftfeuchte:=strtoint(edit5.text);
  Luftdruck:=strtofloat(edit6.text);
  Windgeschwindigkeit:=strtofloat(edit7.Text);
end;
end;
Wie ich das hier sehe, wird das eine, was eingelesen wird, in jedes Array-Feld gepackt. Wie mache ich das denn, dass ich eine Folge von Messdaten ins erste Array-Feld packe und speichere und die nächste folge in das zweite Array-Feld kommt?
  Mit Zitat antworten Zitat
Benutzerbild von ibp
ibp

Registriert seit: 31. Mär 2004
Ort: Frankfurt am Main
1.511 Beiträge
 
Delphi 7 Architect
 
#9

Re: array auslesen

  Alt 7. Nov 2004, 15:24
wenn es mehrere fleder zu bearbeiten sind, dann empfhele ich ^^ das stringgrid ansonsten solltest du einen button nehmen, der dann die werte aus den editfeldern liest und das in das array schreibt. da kannst du dir den index mit einer variablen merken, oder einfach ein dynamisches array verwenden und immer hinten dranhängen....
  Mit Zitat antworten Zitat
Vitus

Registriert seit: 24. Apr 2003
Ort: Auckland, Neuseeland
38 Beiträge
 
Delphi XE2 Professional
 
#10

Re: array auslesen

  Alt 9. Nov 2004, 12:09
Hallo Kermit,

Du brauchst irgendwo im Programm eine Zählvariable, die die Nummer des aktuellen Versuchs speichert.

Du könntest zB. eine Variable activeExperiment: Integer; global definieren.

Dann ist das einlesen einfach:

Code:
with aMess[activeExperiment] do
begin
  datum:=edit1.text;
  Htemperatur:=strtofloat(edit2.text);
  Ttemperatur:=strtofloat(edit3.text);
  Niederschlag:=strtofloat(edit4.text);
  Luftfeuchte:=strtoint(edit5.text);
  Luftdruck:=strtofloat(edit6.text);
  Windgeschwindigkeit:=strtofloat(edit7.Text);
end;
activeExperiment := activeExperiment+1;
Letzte Zeile nicht vergessen! Sonst schreibt der immer alle Werte nur in das erste Feld des Arrays

Gruß
Vitus
Gott segne diese Heiden! [Homer J. Simpson]
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 02:51 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