Autor Beitrag
Loomit
Hält's aus hier
Beiträge: 2



BeitragVerfasst: Di 02.11.04 16:28 
Nen Kumpel und ich haben ein kleines Problem wir bräuchten mal zu diesem Quelltext ein gute Erklärung. also so mit //Text :D


Danke schon mal ;)


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:
unit Tr_u; { Projekt TR * Helmut Achleitner / Herwig Reidlinger }

interface

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

type
  TFormTR = class(TForm)
    Sp7: TSpeedButton;
    Sp8: TSpeedButton;
    Sp9: TSpeedButton;
    Sp4: TSpeedButton;
    Sp5: TSpeedButton;
    Sp6: TSpeedButton;
    Sp1: TSpeedButton;
    Sp2: TSpeedButton;
    Sp3: TSpeedButton;
    Sp0: TSpeedButton;
    SpKomma: TSpeedButton;
    SpErgebnis: TSpeedButton;
    SpPlus: TSpeedButton;
    SpMinus: TSpeedButton;
    SpMal: TSpeedButton;
    SpDurch: TSpeedButton;
    LabelAnzeige: TLabel;
    procedure FormCreate(Sender: TObject);
    procedure SpZahlClick(Sender: TObject);
    procedure SpZeichenClick(Sender: TObject);
  private
    { Private-Deklarationen }
    zahl,zahl2 : real;
    op : char;
    SpArray : ARRAY[0..9OF TSpeedButton;
  public
    { Public-Deklarationen }
  end;

var
  FormTR: TFormTR;

implementation

{$R *.DFM}

procedure TFormTR.FormCreate(Sender: TObject);
begin
   SpArray [0] := Sp0;
   SpArray [1] := Sp1;
   SpArray [2] := Sp2;
   SpArray [3] := Sp3;
   SpArray [4] := Sp4;
   SpArray [5] := Sp5;
   SpArray [6] := Sp6;
   SpArray [7] := Sp7;
   SpArray [8] := Sp8;
   SpArray [9] := Sp9;
end;        

procedure TFormTR.SpZahlClick(Sender: TObject);
VAR Nr : INTEGER;      
begin
   if LabelAnzeige.caption='0' then LabelAnzeige.caption:='';
   if LabelAnzeige.caption='Error' then LabelAnzeige.caption:='';
   FOR Nr := 0 TO 9 DO
       if Sender = SpArray[Nr]
          then LabelAnzeige.caption:=LabelAnzeige.caption+chr(Nr+ord('0'));
   if sender = spKomma then LabelAnzeige.caption:=LabelAnzeige.caption+',';
end;

procedure TFormTR.SPZeichenClick(Sender: TObject);
begin
if LabelAnzeige.caption='Error' then LabelAnzeige.caption:='0';
if sender = spPlus then
  begin
    zahl:=StrToFloat(LabelAnzeige.caption);
    LabelAnzeige.caption:='0';
    op:='+'
  end;
if sender = spMinus then
  begin
    zahl:=StrToFloat(LabelAnzeige.caption);
    LabelAnzeige.caption:='0';
    op:='-'
  end;
if sender = spMal then
  begin
    zahl:=StrToFloat(LabelAnzeige.caption);
    LabelAnzeige.caption:='0';
    op:='x'
  end;
if sender = spDurch then
  begin
    zahl:=StrToFloat(LabelAnzeige.caption);
    LabelAnzeige.caption:='0';
    op:='/'
  end;
if sender = spErgebnis then
  begin
    zahl2:=StrToFloat(LabelAnzeige.Caption);
    case op of
    '+':LabelAnzeige.caption:=FloatToStr(zahl+zahl2);
    '-':LabelAnzeige.caption:=FloatToStr(zahl-zahl2);
    'x':LabelAnzeige.caption:=FloatToStr(zahl*zahl2);
    '/':if zahl2 <> 0 then
           LabelAnzeige.caption:=FloatToStr(zahl/zahl2)
        else
           LabelAnzeige.caption:='Error'
    end
  end
end;

end.


Moderiert von user profile iconChristian S.: Code- durch Delphi-Tags ersetzt.


Zuletzt bearbeitet von Loomit am Di 02.11.04 16:46, insgesamt 1-mal bearbeitet
Stübi
ontopic starontopic starontopic starontopic starhalf ontopic starofftopic starofftopic starofftopic star
Beiträge: 331

Win XP, Win 2000, Win ME
D5 Ent, D7 Prof, D2005 PE, C#
BeitragVerfasst: Di 02.11.04 16:32 
Erwartest du, dass einer zuerst deinen Code begreifen soll und dann noch kommentieren soll?
[edit] Ich sicher nicht!!! [/edit]

Stübi

_________________
Neun von zehn Stimmen in meinen Kopf sagen, dass ich nicht verrückt sei. Die zehnte summt die Tetrismelodie.


Zuletzt bearbeitet von Stübi am Di 02.11.04 16:37, insgesamt 1-mal bearbeitet
Udontknow
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 2596

Win7
D2006 WIN32, .NET (C#)
BeitragVerfasst: Di 02.11.04 16:34 
Der Gipfel der Frechheit. Eine Hausaufgabe, habe ich recht? :evil: :motz:
.Chef
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 1112



BeitragVerfasst: Di 02.11.04 16:36 
Jup. Kein Programmierer würde so einen Kommentar in seinen Code schreiben:
ausblenden Delphi-Quelltext
1:
VAR Nr : INTEGER;      // Die Variable soll dem Typ Integer entsprechen					

:rofl:

_________________
Die Antworten auf die 5 häufigsten Fragen:
1. Copy(), Pos(), Length() --- 2. DoubleBuffered:=True; --- 3. Application.ProcessMessages bzw. TThread --- 4. ShellExecute() --- 5. Keine Vergleiche von Real-Typen mit "="!
Kroni
ontopic starontopic starontopic starontopic starontopic starofftopic starofftopic starofftopic star
Beiträge: 720

Win 98, Win ME, Win2k, Win XP
D3 Pro
BeitragVerfasst: Di 02.11.04 16:36 
Ist das wohl ein Taschenrechner???*g*
müsste mir den code mal in ruhe anschauen....und ihn nachvollziehen....bis später *das mal nebenbei mach*

edit: wenns eine hausaufgabe ist helfe ich leider nicht.....
Tino
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Veteran
Beiträge: 9839
Erhaltene Danke: 45

Windows 8.1
Delphi XE4
BeitragVerfasst: Di 02.11.04 16:40 
Schau mal hier. Dort wird das Projekt TR kurz erklärt.
Loomit Threadstarter
Hält's aus hier
Beiträge: 2



BeitragVerfasst: Di 02.11.04 16:46 
Richtig, eine HA... wär echt nett wenn das einer machen könnte... Sind zu dumm zum zum....
.Chef
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 1112



BeitragVerfasst: Di 02.11.04 16:47 
Ist aber gegen die Grundprinzipien dieses Forums. Und noch viel schlimmer: BOCKLANGWEILIG!!!

_________________
Die Antworten auf die 5 häufigsten Fragen:
1. Copy(), Pos(), Length() --- 2. DoubleBuffered:=True; --- 3. Application.ProcessMessages bzw. TThread --- 4. ShellExecute() --- 5. Keine Vergleiche von Real-Typen mit "="!
jasocul
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 6393
Erhaltene Danke: 147

Windows 7 + Windows 10
Sydney Prof + CE
BeitragVerfasst: Di 02.11.04 16:52 
Jau für beides. :rofl:
Stübi
ontopic starontopic starontopic starontopic starhalf ontopic starofftopic starofftopic starofftopic star
Beiträge: 331

Win XP, Win 2000, Win ME
D5 Ent, D7 Prof, D2005 PE, C#
BeitragVerfasst: Di 02.11.04 16:53 
Sicherlich müsst ihr diese Hausaufgabe auch noch morgens schon abgeben!!??
Geht gegen meine prinzipien.

_________________
Neun von zehn Stimmen in meinen Kopf sagen, dass ich nicht verrückt sei. Die zehnte summt die Tetrismelodie.
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 02.11.04 16:55 
Hi, Leute!

Ich denke, es haben jetzt genug Leute gesagt, dass sie nicht zur Sache antworten werden. Bitte belasst es jetzt dabei! :mahn:

Danke :-)
Christian

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

Win7
D2006 WIN32, .NET (C#)
BeitragVerfasst: Di 02.11.04 17:13 
Och menno, pupil bashing macht aber so viel Spass! :mrgreen: