AGB  ·  Datenschutz  ·  Impressum  







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

if...then...else

Ein Thema von Jarie · begonnen am 22. Mai 2006 · letzter Beitrag vom 23. Mai 2006
Antwort Antwort
Seite 4 von 5   « Erste     234 5      
Benutzerbild von leddl
leddl

Registriert seit: 13. Okt 2003
Ort: Künzelsau
1.613 Beiträge
 
Delphi 2006 Professional
 
#31

Re: if...then...else

  Alt 22. Mai 2006, 17:45
Zitat von Jarie:
Ne, mir fällt nix auf, sonst hätt ich das Prob ja schon gelöst xD.
Dann solltest du dich evtl. nochmal mit den Grundlagen befassen
Du fängst mit einer if-Bedingung an, brichst diese dann aber einfach so ab, ohne daß sie einen Sinn ergibt. Nimm also einfach mal das erste if raus. Zudem hast du (obwohl es jetzt schon x-mal gesagt wurde) immer noch nicht den Punkt hinter das letzte end gesetzt...
Axel Sefranek
A programmer started to cuss, cause getting to sleep was a fuss.
As he lay there in bed, looping round in his head
was: while(!asleep()) ++sheep;
  Mit Zitat antworten Zitat
markusj

Registriert seit: 9. Dez 2005
Ort: Kandel
408 Beiträge
 
#32

Re: if...then...else

  Alt 22. Mai 2006, 17:48
Andere Frage ... was soll dieses Konstrukt bewirken?
Markus
  Mit Zitat antworten Zitat
Benutzerbild von Jarie
Jarie

Registriert seit: 28. Feb 2006
Ort: Deutschland
17 Beiträge
 
Delphi 7 Professional
 
#33

Re: if...then...else

  Alt 22. Mai 2006, 18:18
Was das bewirken soll? siehe Anfang des Threads Oo. ^^

Na ja, hab jetzt allet umstrukturiert, jetzt meckert er wegen dem Punkt am Ende xDDD.

Delphi-Quellcode:
unit rechnen;

interface

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

type
  TForm1 = class(TForm)
    Button1: TButton;
    Button2: TButton;
    Button3: TButton;
    Button4: TButton;
    Button5: TButton;
    Button6: TButton;
    Button7: TButton;
    Button8: TButton;
    Button9: TButton;
    Button10: TButton;
    Button11: TButton;
    Button12: TButton;
    Button13: TButton;
    Button14: TButton;
    Button15: TButton;
    Label1: TLabel;
    MainMenu1: TMainMenu;
    Datei1: TMenuItem;
    Beenden1: TMenuItem;
    Label2: TLabel;
    Label3: TLabel;
    Label4: TLabel;
    Label5: TLabel;
    Label6: TLabel;
    Label7: TLabel;
    procedure Button1Click(Sender: TObject);
    procedure Button2Click(Sender: TObject);
    procedure Button3Click(Sender: TObject);
    procedure Button4Click(Sender: TObject);
    procedure Button5Click(Sender: TObject);
    procedure Beenden1Click(Sender: TObject);
    procedure Button6Click(Sender: TObject);
    procedure Button7Click(Sender: TObject);
    procedure Button8Click(Sender: TObject);
    procedure Button9Click(Sender: TObject);
    procedure Button10Click(Sender: TObject);
    procedure Button11Click(Sender: TObject);
  private
    { Private-Deklarationen }
  public
    { Public-Deklarationen }
  end;

var
  Form1: TForm1;
  CurrentLabel: TLabel;
implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
begin
Form1.Label1.Caption:= Form1.Label1.Caption + '1';
end;

procedure TForm1.Button2Click(Sender: TObject);
begin
Form1.Label1.Caption:= Form1.Label1.Caption + '2';
end;

procedure TForm1.Button3Click(Sender: TObject);
begin
Form1.Label1.Caption:= Form1.Label1.Caption + '3';
end;

procedure TForm1.Button4Click(Sender: TObject);
begin
Form1.Label1.Caption:= Form1.Label1.Caption + '4';
end;

procedure TForm1.Button5Click(Sender: TObject);
begin
Form1.Label1.Caption:= Form1.Label1.Caption + '5';
end;

procedure TForm1.Button6Click(Sender: TObject);
begin
Form1.Label1.Caption:= Form1.Label1.Caption + '6';
end;

procedure TForm1.Button7Click(Sender: TObject);
begin
Form1.Label1.Caption:= Form1.Label1.Caption + '7';
end;

procedure TForm1.Button8Click(Sender: TObject);
begin
Form1.Label1.Caption:= Form1.Label1.Caption + '8';
end;

procedure TForm1.Button9Click(Sender: TObject);
begin
Form1.Label1.Caption:= Form1.Label1.Caption + '9';
end;

procedure TForm1.Button10Click(Sender: TObject);
begin
Form1.Label1.Caption:= Form1.Label1.Caption + '0';
end;

procedure TForm1.Button11Click(Sender: TObject);
begin
CurrentLabel:=Label5;
CurrentLabel.Caption:= Form1.Label1.Caption;
Form1.Label1.Caption:= '';
end;

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

begin
if (Form1.Label5.Caption='') then
begin
Form1.Label1.Caption:=Form1.Label5.Caption;
end
else
begin
Form1.Label1.Caption:=Form1.Label6.Caption;
end;
end

end.
Das ist jetzt mal die gesamte Anwendung, mal sehen, ob ihr was rauskriegt ^^.
  Mit Zitat antworten Zitat
BenjaminH

Registriert seit: 14. Okt 2004
Ort: Freiburg im Breisgau
713 Beiträge
 
Turbo Delphi für Win32
 
#34

Re: if...then...else

  Alt 22. Mai 2006, 18:23
Zitat von Jarie:
Delphi-Quellcode:
begin
if (Form1.Label5.Caption='') then
begin
Form1.Label1.Caption:=Form1.Label5.Caption;
end
else
begin
Form1.Label1.Caption:=Form1.Label6.Caption;
end;
end

end.
Wann soll das ausgeführt werden?
Benjamin
  Mit Zitat antworten Zitat
Benutzerbild von leddl
leddl

Registriert seit: 13. Okt 2003
Ort: Künzelsau
1.613 Beiträge
 
Delphi 2006 Professional
 
#35

Re: if...then...else

  Alt 22. Mai 2006, 18:24
Delphi-Quellcode:
//[...]
procedure TForm1.Beenden1Click(Sender: TObject);
begin
  Close;
end;

begin
  if (Form1.Label5.Caption='') then
  begin
    Form1.Label1.Caption:=Form1.Label5.Caption;
  end
  else
  begin
    Form1.Label1.Caption:=Form1.Label6.Caption;
  end;
end

end.
So, wir haben eine Prozedur, die einwandfrei abgeschlossen wird. Danach fängst du mit einem Begin an, ohne dich in irgendeiner Methode zu bewegen -> geht nicht...
Zum anderen fehlt am vorletzten end jetzt ein Strichpunkt

PS: Tu dir selbst einen Gefallen und rück deinen Quelltext ein bißchen ein. Das kann man ja kaum anschauen sowas
Axel Sefranek
A programmer started to cuss, cause getting to sleep was a fuss.
As he lay there in bed, looping round in his head
was: while(!asleep()) ++sheep;
  Mit Zitat antworten Zitat
Benutzerbild von Jarie
Jarie

Registriert seit: 28. Feb 2006
Ort: Deutschland
17 Beiträge
 
Delphi 7 Professional
 
#36

Re: if...then...else

  Alt 22. Mai 2006, 18:27
Wann dat passieren soll? Ja, wenn halt im Label 1 was steht, aber im andren nit... Muss ich wohl die Labels vertauschen... ^^

Ja, ich weiß, das Semikolon, aber da meckert dat Delphiprog immer, wenn ich det mache... ^^
  Mit Zitat antworten Zitat
Benutzerbild von jfheins
jfheins

Registriert seit: 10. Jun 2004
Ort: Garching (TUM)
4.579 Beiträge
 
#37

Re: if...then...else

  Alt 22. Mai 2006, 18:31
Ausserdem hast du meinen Rat nicht richtig umgesetzt. Ich habe gesagt, du sollt

1. in deinen zig Methoden statt
Delphi-Quellcode:
procedure TForm1.Button7Click(Sender: TObject);
begin
Form1.Label1.Caption:= Form1.Label1.Caption + '7';
end;
eifach das schreiben:CurrentLabel.Caption:= CurrentLabel.Caption + '7'; Und das
Delphi-Quellcode:
CurrentLabel:=Label5;
CurrentLabel.Caption:= Form1.Label1.Caption;
Form1.Label1.Caption:= '';
ist natürlich Quark.
Wenn das der Plus/Minus/Mal/Geteilt Button ist müsse das so aussehn:
Delphi-Quellcode:
CurrentLabel:=Label5;
LabelX.Caption := '+'; // Für den Operator
Ausserdem hab' ich was von FormCreate geschrieben usw. ...
  Mit Zitat antworten Zitat
Benutzerbild von Jarie
Jarie

Registriert seit: 28. Feb 2006
Ort: Deutschland
17 Beiträge
 
Delphi 7 Professional
 
#38

Re: if...then...else

  Alt 22. Mai 2006, 18:38
Da fällt mir ein, dass ich was hab vergessen zu erwähnen xD.
Also, alle Zahlen kommen erst ins Label1, werden da halt als Zeichenkette gesammelt und sollen dann halt entweder in Label5 oder Label6 kommen, wenn Label5 voll ist und man auf eines der Rechenoperatoren drückt, soll die Zeichenkette dann da auftauchen.

Aber ich denk mal, das konnte man inzwischen auch schon aus dem Quellcode erschließen...

Ja, ich hab das ja mit dem Current und so gemacht, aber das ging dann alles durcheinander! Da drückte man dann auf die Zahl und auf's +, dann kam das plötzlich in ein ganz anderes Label... Deswegen hab ich das wieder rausgenommen...
  Mit Zitat antworten Zitat
Benutzerbild von jfheins
jfheins

Registriert seit: 10. Jun 2004
Ort: Garching (TUM)
4.579 Beiträge
 
#39

Re: if...then...else

  Alt 22. Mai 2006, 19:12


Ich dachte bis jetzt du wolltest das so machen, dass

- Erst Zahlen eingegeben werden können

- Dann + oder - etc. gedrückt wird

- Daraufhin Zahlen in einem anderen Label eingegeben werden

- = gedrüclt wird und

- Das ergebnis in einem dritten Label erscheint

Oder wie hattest du das vor ?
  Mit Zitat antworten Zitat
Benutzerbild von Jarie
Jarie

Registriert seit: 28. Feb 2006
Ort: Deutschland
17 Beiträge
 
Delphi 7 Professional
 
#40

Re: if...then...else

  Alt 22. Mai 2006, 19:20
Ja, das hab ich jetzt mittlerweile so vor.
Dann fiel mri aber grade noch ein Problem auf:
Zahl kommt ins 1. Label
+ drücken und zahlen sollen ins Zweite
= drücken und Computer soll addieren, woher soll der Com aber wissen, wenn man nachher noch mehrere Rechenoperatoren hat, was er jetzt rechnen muss? Ob Plus oder Minus oder geteilt?
Also mittlerweile sieht's bei mir so aus:

Delphi-Quellcode:
var
  Form1: TForm1;
  CurrentLabel: TLabel;
implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
  begin
    CurrentLabel.Caption:= Form1.Label5.Caption + '1';
end;

procedure TForm1.Button2Click(Sender: TObject);
  begin
    CurrentLabel.Caption:= Form1.Label5.Caption + '2';
end;

procedure TForm1.Button3Click(Sender: TObject);
  begin
    CurrentLabel.Caption:= Form1.Label5.Caption + '3';
end;

procedure TForm1.Button4Click(Sender: TObject);
  begin
    CurrentLabel.Caption:= Form1.Label5.Caption + '4';
end;

procedure TForm1.Button5Click(Sender: TObject);
  begin
    CurrentLabel.Caption:= Form1.Label5.Caption + '5';
end;

procedure TForm1.Button6Click(Sender: TObject);
  begin
    CurrentLabel.Caption:= Form1.Label5.Caption + '6';
end;

procedure TForm1.Button7Click(Sender: TObject);
  begin
    CurrentLabel.Caption:= Form1.Label5.Caption + '7';
end;

procedure TForm1.Button8Click(Sender: TObject);
  begin
    CurrentLabel.Caption:= Form1.Label5.Caption + '8';
end;

procedure TForm1.Button9Click(Sender: TObject);
  begin
    CurrentLabel.Caption:= Form1.Label5.Caption + '9';
end;

procedure TForm1.Button10Click(Sender: TObject);
  begin
    CurrentLabel.Caption:= Form1.Label5.Caption + '0';
end;

procedure TForm1.Button11Click(Sender: TObject);
  begin
    Form1.Label5.Caption:= CurrentLabel.Caption;
end;

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

procedure TForm1.FormCreate(Sender: TObject);
  begin
    CurrentLabel:=Form1.Label5;
end;

end.
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 4 von 5   « Erste     234 5      


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 22:46 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