Autor Beitrag
megaperlz
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 53

Win95 Win98 Win2000 WinXP
D5
BeitragVerfasst: Fr 17.06.05 12:20 
dann mal aufgehts :-)

für entsprechende entlohnung sind bestimmt einige bereit das Programm zu schreiben... ob der lehrer des dann natürlich merkt oder nicht des ist wieder ne andere Sache (und eigentlich nicht unser Problem)

_________________
Nichts ist gelber als Geld selber.
Asgar
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 160

XP Home Edition
D5
BeitragVerfasst: Mo 20.06.05 07:43 
dann schieb mal in die job Sparte, ich glaube der Postet sowieso nicht mehr.
onra Threadstarter
Hält's aus hier
Beiträge: 13

xp
D6
BeitragVerfasst: Fr 24.06.05 10:09 
Wir wollen es jetzt folgendermassen machen: wir haben einen timer eingebaut, der die elektrogeräte aufruft und sie wenn sie an sind zählt so lange wie sie an sind. dann werden die kosten berechnet.
Wie soll das jetzt gehen?

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:
122:
123:
124:
125:
126:
127:
128:
129:
130:
131:
132:
133:
134:
135:
136:
137:
138:
139:
140:
141:
142:
143:
144:
145:
146:
147:
148:
149:
150:
151:
152:
unit haushaltsim;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs,ExtCtrls, Menus, StdCtrls;

type

{Ä}  TElektroGeraet = class(TPanel)
  procedure click; override;
  private
    { Private-Deklarationen }
    ein : boolean;
    Leistung, Verbrauch : extended;
    Startzeit : TTimeStamp;
{Ä}
    Bild : TImage;
    Name : String;
  public
    { Public-Deklarationen }
     Inschrift : TLabel;
     procedure richte_ein(Neuer_Name : String; Neue_Leistung : Extended; Nr : Integer);
     procedure aendere_zustand;
     function gib_verbrauch_an : extended;
  end;

  TForm1 = class(TForm)
    MainMenu1: TMainMenu;
    Datei1: TMenuItem;
    Beenden1: TMenuItem;
    EPC: TEdit;
    EHerd: TEdit;
    ETV: TEdit;
    LPC: TLabel;
    LHerd: TLabel;
    LTV: TLabel;
    Label1: TLabel;
    Timer1: TTimer;
    procedure Beenden1Click(Sender: TObject);
    procedure FormActivate(Sender: TObject);
    procedure Timer1Timer(Sender: TObject);
  private
    { Private-Deklarationen }
  public
    { Public-Deklarationen }
  end;

var
  Form1: TForm1;
  Toaster,herd,tv:TElektrogeraet;

implementation

{$R *.dfm}
procedure TElektrogeraet.click;
begin
{Ä}       If self.color=clred then
        begin
                self.Color:=clblue;
                inschrift.Caption:='aus';
                ein := false
        end else
        begin
                self.color:=clred;
                inschrift.Caption:='ein';
                ein := true
        end;

end;

procedure TElektroGeraet.richte_ein(Neuer_Name : String; Neue_Leistung : Extended; Nr:Integer);
begin
{Ä}        top := 10;
        left := 10+2*Nr*70;
        height := 100;
        width := 100;
        Color:=clcream;
        ein := false;
        Leistung := Neue_Leistung;
        Verbrauch := 0;
        Startzeit := DateTimeToTimeStamp(now);
        Name := Neuer_Name;
{Ä}        Bild := TImage.create(self);
        Bild.Parent := self;
        Bild.Top:=30;
        try
                Bild.picture.loadfromfile(Name+'.bmp');
        except
        end;
{Ä}        Inschrift := TLabel.create(self);
        Inschrift.Parent := self;
        Inschrift.caption:=Name;
        Inschrift.Top:=5;
        Inschrift.Left:=5;
end;

procedure TElektroGeraet.aendere_zustand;
begin
        {text}
end;

function TElektroGeraet.gib_verbrauch_an : extended;
begin
        {text}
end;

procedure TForm1.Beenden1Click(Sender: TObject);
begin
        close
end;

procedure TForm1.FormActivate(Sender: TObject);
begin
        Toaster:=TElektrogeraet.create(Form1);
     {Ä}   Toaster.Parent:=Form1;
        Toaster.richte_ein('PC',2000,0);
        herd:=TElektrogeraet.create(Form1);
     {Ä}  herd.Parent:=Form1;
        herd.richte_ein('herd',2000,1);
        TV:=TElektrogeraet.create(Form1);
     {Ä}  tv.Parent:=Form1;
        tv.richte_ein('tv',2000,2);
        end;

procedure TForm1.Timer1Timer(Sender: TObject);
{var
I: integer;
Temp: TComponent;
begin
caption:=timetostr(now);
verbrauch:=0;
leistung:=0;
for I:=0 to componentcount -1 do
begin
temp:=Components[I];
if (temp is telektrogeraet) then
begin
(temp as TElektrogeraet).zeichne_neu;
Verbrauch:=verbrauch+(Temp as TElektrogeraet).verbrauch}
{*spinzeit.value}
{leistung:=leistung+(temp as TElektrogeraet).leistung;
end
end;
Labelverbrauch.caption:=energietext(verbrauch);
laberlleistung.caption:=leistungstext(leistung);
labelarbeiskosten.caption:=floattostrF((1+mehrwertsteuer/100)*verbrauch*(preis_einheit));
end;  }

end;

end.
{Ä}
Einloggen, um Attachments anzusehen!
azubi_20
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 593

WinXP SP2, Ubuntu 8.4
D7 Enterp., D2005 Prof., Java (Eclipse 3.4.0)
BeitragVerfasst: Fr 24.06.05 10:37 
Hallo,

Also erstmal : Euer Anhang ist kein Prog, sondern ein Screenshot, mit dem man nicht anfangen kann.

Ein paar Tipps:

So wie ich das verstanden hab, habt ihr 5 Geräte, also braucht ihr im Timer-event 5 berechnungen für den Verbrauch. Diese werden aber nur bei Aktivierung durchgeführt (if-then-else-Entscheidung).

Die Aktivierung sollt ihr über ein Klick auf das Bild des Gerätes erreichen. Also 5 Bilder auf die Form und im OnClick-Event ein "An-Aus-Schalter" einbauen : WENN AN DANN AUS SONST AN ( AN = Boolsche Variable).

Wenn ihr ein bischen Eigeninitiative zeigt, wird euch auch geholfen...

PS : Welche Klasse bist du ? (nur um abzuschätzen, was der Lehrer von euch erwartet)