Autor Beitrag
Peter83
Hält's aus hier
Beiträge: 4



BeitragVerfasst: Di 24.06.08 11:38 
Hi Leutz,

ich bin der Peter, neu hier in diesem Forum und beschäftige mich seit wenigen Wochen mit Delphi. Leider braucht man mittlerweile sogar Delphi, wenn man Pädagogik studiert, da muss ich nun wohl durch *g* OK, viell. entdeck ich auch noch die Freude am Programmieren.
Wir haben heute im Kurs eine Hausaufgabe bekommen. Wir sollen uns von einem unbekannten Projekt die Unit anschauen, ob dort Fehler sind, diese beseitigen und... mehr interessiert erstmal nicht.

Also, in diesem Projekt geht es wohl um Luftdruck, Temperatur etc. , soviel ist mir schon mal klar.
Im Formular haben wir zwei Stringgrids, wohl eine zum eingeben, eine zur Ausgabe, sowie ein Label mit Aufschrift: "Werte nicht geprüft" und einen Button "Auswertung starten.

Ich habe nun die Fehler beseitigt und es läuft auch. Aber es passiert nichts. Damit meine ich, dass die Stringgrids nicht beschriftet werden und dass ich auch Werte eingeben kann, mit diesen geschieht aber ebenfalls nix.


Wenn jemand daran Freude hat, darf er mir gerne einen Tip geben. Außerdem frage ich mich, wo man "FormCreate" eingeben kann, wie es hier geschehen ist (kenne ich noch nicht). Hier kommt der Quelltext:



ausblenden volle Höhe Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
44:
45:
46:
47:
48:
49:
50:
51:
52:
53:
54:
55:
56:
57:
58:
59:
60:
61:
62:
63:
64:
65:
66:
67:
68:
69:
70:
71:
72:
73:
74:
75:
76:
77:
78:
79:
80:
81:
82:
83:
84:
85:
86:
87:
88:
89:
90:
91:
92:
93:
94:
95:
96:
97:
98:
99:
100:
101:
102:
103:
104:
105:
106:
107:
108:
109:
110:
111:
112:
113:
114:
115:
116:
117:
118:
119:
120:
121:
unit Zwanzigster_juni;

interface

uses
  SysUtils, WinTypes, WinProcs, Messages, Classes, Graphics, Controls,
  Forms, Dialogs, StdCtrls, Grids;

const
  AnzWerte=3;

type
  TMWVector=array[1..AnzWerte] of double;
  TMW_Art=(Luftdruck,Temperatur);

  TForm1 = class(TForm)
    StringGrid1: TStringGrid;
    Button1: TButton;
    StringGrid2: TStringGrid;
    Status: TLabel;
    procedure Button1Click(Sender: TObject);
    procedure FormCreate(Sender: TObject);
  private
    { Private-Deklarationen }
    MW:array[TMW_Art] of TMWVector;
    WerteOk:boolean;
    procedure LeseWerte( var V:TMWVector; const Spalte:byte; const Unten,Oben:double);
    procedure Maximum( const V:TMWVector; var max :double);
  public
    { Public-Deklarationen }
  end;


var
  Form1: TForm1;




implementation

{$R *.DFM}


procedure TForm1.LeseWerte( var V:TMWVector; const Spalte:byte; const Unten,Oben:double);
  var i:byte;
begin

  for I:=1 to AnzWerte do
  begin
  {---Werte konvertieren}
    if stringgrid1.cells[Spalte,i] = ''
    then V[i]:=0
    else V[i]:=StrToFloat(stringgrid1.cells[Spalte,i]);

  {---Werte pruefen}
    if (V[i] < Unten) or (v[i] > Oben) then WerteOk:=false;
  end;

end;

procedure TForm1.Maximum( const V:TMWVector; var max :double);
  var i:byte;
begin
  max:=V[1];
  for I:=1 to AnzWerte do
  begin
    if v[i] > max then max:=v[i];
  end;
end;


procedure TForm1.Button1Click(Sender: TObject);

 var
   max,min,sum:double;
begin
 WerteOk:=true;

 {---Werte konvertieren}
 LeseWerte(MW[Temperatur],2,-273,1000);


 {--- Auswertung starten und Ergebnis eintragen}
 Maximum(MW[Temperatur],max);
 stringGrid2.cells[2,1]:=FloatToStr(max);


 if WerteOk
 then
   begin
     Status.caption:='Status:  Werte innerhalb zulässiger Grenzen';
     status.color:=clWindow;
   end
 else
   begin
      Status.caption:='Status:  Werte außerhalb zulässiger Grenzen';
      Status.color:=clRed;
   end;

end;

procedure TForm1.FormCreate(Sender: TObject);
  var i:byte;
begin
   stringGRid1.RowCount:=AnzWerte+1;

  {--- Beschriftung - Werte initialisieren}
  stringGrid1.cells[0,0]:='Nr';
  stringGrid1.cells[1,0]:='Luftdruck';
  stringGrid1.cells[2,0]:='Temperatur';
  for I:=1 to AnzWerte do stringGrid1.cells[0,i]:=IntToStr(i);

  stringGrid2.cells[1,0]:='Luftdruck';
  stringGrid2.cells[2,0]:='Temperatur';
  stringGrid2.cells[0,1]:='Maximum';
  stringGrid2.cells[0,2]:='Minimum';
  stringGrid2.cells[0,3]:='Durchschnitt';
end;

end.


Moderiert von user profile iconChristian S.: Delphi-Tags hinzugefügt


Zuletzt bearbeitet von Peter83 am Mi 25.06.08 17:46, insgesamt 1-mal bearbeitet
GericasS
ontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic starofftopic star
Beiträge: 540

Windows Vista Home Premium
D2010, VisualStudio2008
BeitragVerfasst: Di 24.06.08 11:47 
Setzt das ganze mal in Delphi-Tags rein kann man sonst nicht lesen danke =)

_________________
Alexander N.
Neue Bewaffnung Amilo xi2428 T9300
ZeitGeist87
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 1593
Erhaltene Danke: 20

Win95-Win10
Delphi 10 Seattle, Rad Studio 2007, Delphi 7 Prof., C++, WSH, Turbo Pascal, PHP, Delphi X2
BeitragVerfasst: Di 24.06.08 11:54 
bäh..die Einrückung is ne Katastrophe..

Ja klar..wo kein Code ist, kann er auch nichts berechnen..

Und was genau zeichnet er nicht im StringGrid?

Am besten du postest mal das Projekt.

LG
Stefan

_________________
Wer Provokationen, Ironie, Sarkasmus oder Zynismus herauslesen kann soll sie ignorieren um den Inhalt meiner Beiträge ungetrübt erfassen zu können.
Christian S.
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 20451
Erhaltene Danke: 2264

Win 10
C# (VS 2019)
BeitragVerfasst: Di 24.06.08 11:55 
Hallo,

bitte ändere den Titel des Topics, da er wenig über das eigentlich Thema verrät. Hier der entsprechende Absatz aus den Richtlinien:

1.2 Beiträge:
Bitte formuliere den Betreff Deiner Beiträge so, dass andere Mitglieder anhand dieser bereits das eigentliche Thema festmachen können. Beiträge wie etwa "Eine Anfängerfrage" oder "Weiß jemand, wie das geht?" lassen den Leser im Unklaren darüber, was das Thema der Diskussion ist.[...]


Einfach oben bei Deinem ersten Beitrag auf user defined image oder user defined image klicken und den Titel ändern. Danke Dir!

Viele Grüße,
Christian

_________________
Zwei Worte werden Dir im Leben viele Türen öffnen - "ziehen" und "drücken".
GericasS
ontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic starofftopic star
Beiträge: 540

Windows Vista Home Premium
D2010, VisualStudio2008
BeitragVerfasst: Di 24.06.08 11:59 
Form.Create erreichst du durch einen doppelklick auf die Form =)

_________________
Alexander N.
Neue Bewaffnung Amilo xi2428 T9300
Tilman
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 1405
Erhaltene Danke: 51

Win 7, Android
Turbo Delphi, Eclipse
BeitragVerfasst: Di 24.06.08 14:58 
user profile iconGericasS hat folgendes geschrieben:
Form.Create erreichst du durch einen doppelklick auf die Form =)


Und generell die meisten Eregnisse in dem du im ObjektInspektor auf "Eregnisse" klickst, und dann auf den betreffenden Eintrag Doppelt.

_________________
Bringe einen Menschen zum grübeln, dann kannst du heimlich seinen Reis essen.
(Koreanisches Sprichwort)
Peter83 Threadstarter
Hält's aus hier
Beiträge: 4



BeitragVerfasst: Mi 25.06.08 17:50 
Titel: Back again...
user profile iconZeitGeist87 hat folgendes geschrieben:
bäh..die Einrückung is ne Katastrophe..

Ja klar..wo kein Code ist, kann er auch nichts berechnen..

Und was genau zeichnet er nicht im StringGrid?

Am besten du postest mal das Projekt.

LG
Stefan


Hallo, Danke für die Antworten. ich habe den Titel geändert.

Wie poste ich das Projekt? Häng ich einfach das ganze Delphi-Projekt als Dateianhang an?

Danke und schön der EM 11 die Daumen drücken *g*

Davor werde ich allerdings noch ein wenig im Buch "Jetzt lerne ich Delphi lesen"
Hoffentlich hilfts *g*

VG
Peter
Narses
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Administrator
Beiträge: 10183
Erhaltene Danke: 1256

W10ent
TP3 .. D7pro .. D10.2CE
BeitragVerfasst: Mi 25.06.08 17:58 
Titel: Re: Back again...
Moin und :welcome: im Forum!

user profile iconPeter83 hat folgendes geschrieben:
Wie poste ich das Projekt? Häng ich einfach das ganze Delphi-Projekt als Dateianhang an?
Pack einfach den Inhalt des Projektordners (aber ohne die EXE) in ein ZIP-Archiv und stell das in den Anhang deines Beitrages. ;)

cu
Narses

_________________
There are 10 types of people - those who understand binary and those who don´t.
Peter83 Threadstarter
Hält's aus hier
Beiträge: 4



BeitragVerfasst: Mi 25.06.08 18:31 
Titel: Re: Back again...
user profile iconNarses hat folgendes geschrieben:
Pack einfach den Inhalt des Projektordners (aber ohne die EXE) in ein ZIP-Archiv und stell das in den Anhang deines Beitrages. ;)

Hi Narses
Tja leider verstehe ich das mit ohne die EXE nicht. Hab nun einfach mal alles angehängt...
cu
Peter

Moderiert von user profile iconNarses: Zitat gekürzt
Einloggen, um Attachments anzusehen!
Jakob_Ullmann
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 1747
Erhaltene Danke: 15

Win 7, *Ubuntu GNU/Linux*
*Anjuta* (C, C++, Python), Geany (Vala), Lazarus (Pascal), Eclipse (Java)
BeitragVerfasst: Mi 25.06.08 18:38 
Wenn du compilierst (F9), wird ein Programm erzeugt, und das hat die Endung .exe (für executable), also eine ausführbare Datei. Diese Programmdatei sollst du nicht mit packen, also ohne EXE.
Narses
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Administrator
Beiträge: 10183
Erhaltene Danke: 1256

W10ent
TP3 .. D7pro .. D10.2CE
BeitragVerfasst: Mi 25.06.08 18:38 
Titel: Re: Back again...
Moin!

user profile iconPeter83 hat folgendes geschrieben:
Tja leider verstehe ich das mit ohne die EXE nicht.
Ähm :? wenn eine Datei mit der Endung .exe dabei gewesen wäre, hättest du sie weglassen sollen. 8) Hab ich mich so undeutlich ausgedrückt? :oops: :nixweiss:

user profile iconPeter83 hat folgendes geschrieben:
Hab nun einfach mal alles angehängt...
Passt doch. ;)

cu
Narses

_________________
There are 10 types of people - those who understand binary and those who don´t.
Peter83 Threadstarter
Hält's aus hier
Beiträge: 4



BeitragVerfasst: Mi 25.06.08 18:43 
Titel: Ok Ok
hätte ich durchaus verstehen können ;)
Jakob_Ullmann
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 1747
Erhaltene Danke: 15

Win 7, *Ubuntu GNU/Linux*
*Anjuta* (C, C++, Python), Geany (Vala), Lazarus (Pascal), Eclipse (Java)
BeitragVerfasst: Mi 25.06.08 19:02 
Ist doch egal, jest weißt du halt für's nächste mal, was eine EXE ist. :wink: