Menu schließen

Delphi 7. Taschenrechner

Frage: Delphi 7. Taschenrechner
(17 Antworten)

 
Hallo.
Ich programmiere gerade einen Taschenrechner in Delphi7, der erstmal addieren muss, das klappt aber nicht.
Hier ist die ganze Code:
unit ts;

interface

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

type
TForm1 = class(TForm)
eZahl1: TEdit;
eZahl2: TEdit;
btPlus: TButton;
eResult: TEdit;
procedure btPlusClick (Sender: TObject);
private
{ Private-Deklarationen }
public
{ Public-Deklarationen }
end;

var
Form1: TForm1;
Zahl1: Integer;
Zahl2: Integer;
Ergebnis: Integer;

implementation

{$R *.dfm}

procedure TForm1.btPlusClick(Sender: TObject);
begin
Zahl1 := StrToInt(eZahl1.Text);
Zahl2 := StrToInt(eZahl2.Text);
Ergebnis := Zahl1 + Zahl2;
eResult.Text := IntToStr(Ergebnis);
end;


end.

Weiß jemand vielleicht, woran das Problem liegen könnte?
Danke
GAST stellte diese Frage am 06.01.2008 - 13:37

 
Antwort von GAST | 06.01.2008 - 14:18
sieht
keiner den Fehler?

 
Antwort von GAST | 06.01.2008 - 15:33
Ich kenne zwar die Sprache nircht, aber hast du keine Strichpunkte u.ä übersehen?


Autor
Beiträge 4080
17
Antwort von S_A_S | 06.01.2008 - 15:34
Kriegst du irgendeine Exception ausgegeben oder eine Fehlermeldung? Das könnte schon die Antwort auf dein Problem sein ;)


Autor
Beiträge 6489
9
Antwort von Peter | 06.01.2008 - 15:38
öhm ich erinner mich nichmehr so gut dadran...^^

aber kanns sein, dass du das mit einem feld machen musst..? so wies aussieht, gibst du in zwei felder zwei zahlen ein, die in nem dritten feld später addiert sind...

btw: die lösungen sind bei klett auffer hp zu finden...*hust*
________________________
 e-Hausaufgaben.de - Team


Autor
Beiträge 4080
17
Antwort von S_A_S | 06.01.2008 - 15:50
Also ein Array braucht man um zwei Zahlen mal auf jeden Fall nicht. Das sieht an sich richtig aus. Wobei du könntest mal versuchen statt mit Integer mit Gleitkommawerten zu arbeiten. Das erscheint mir etwas sinnvoller. Wobei das nehme ich an mal nicht der fehler ist, weil würden in der Textbox Gleitkommazahlen stehen würde die Konvertierung ja fehlschlagen.

 
Antwort von GAST | 06.01.2008 - 16:50
Nein, bei mir kommt keine Fehlermeldung, wenn ich auf F9 drücke. Das Problem ist nur, dass wenn ich die beiden Zahlen eingegeben habe und auf den Button + (btPlus) drücke, passiert nichts.


Autor
Beiträge 4080
17
Antwort von S_A_S | 06.01.2008 - 16:53
Ist der Ereignishandler auch richtig registriert? Also weis, dass Programm, dass du das Clickereignis mit deiner MEthode abfängst? Da weis ich grad nicht wie das in Delphi im Quellcode zu ersehen ist. Aber ich würde mal über den Formular Designer schauen ob beim Button.Click Ereignis auch diese Methode registriert ist.

 
Antwort von GAST | 06.01.2008 - 16:56
Hast du irgendein kleines Programm, welches funktioniert?
Kannst du das uns posten?

 
Antwort von GAST | 06.01.2008 - 17:12
S_A_S: ja, müsste alles richtig sein.

rabari: nein, habe ich nicht, Taschenrechner ist mein erstes Programm in Delphi)


Autor
Beiträge 4080
17
Antwort von S_A_S | 06.01.2008 - 17:14
Hmm dann für mal diregt nach dem Begin der TForm1.btnplusClick Prozedur ein "showmessage(`Test`);" ein. Guck mal ob dann auch eine meldung kommt.

 
Antwort von GAST | 06.01.2008 - 17:26
S_A_S: Wie geht das? Was soll ich dort reinschreiben?


Autor
Beiträge 4080
17
Antwort von S_A_S | 06.01.2008 - 17:27
Das war ich gesagt habe. "Showmessage(`Test`);" schowmessage ist der Befehl für eine Medlung und Test der Text der ausgegeben werden soll.

 
Antwort von GAST | 06.01.2008 - 17:33
Kommt keine Meldung, passiert dasselbe, wie früher.


Autor
Beiträge 4080
17
Antwort von S_A_S | 06.01.2008 - 17:49
Dann ist die Methode nicht mit dem Ereignis verknüpft. Wie ich es vorher schon vermutet hatte.


Autor
Beiträge 0
14
Antwort von Webperoni (ehem. Mitglied) | 06.01.2008 - 18:30
Also ich habe das Programm so getestet, wie du es hier gepostet hast und bei mir geht es. Mit dem Unterschied, dass ich nicht die edit-felder und den button umbenannt habe.


Autor
Beiträge 0
14
Antwort von track (ehem. Mitglied) | 06.01.2008 - 19:53
var
Form1: TForm1;
Zahl1: Integer;
Zahl2: Integer;
Ergebnis: Integer;


Also wenn der Lehrer euch nichts zu Globalen Variablen gesagt hat....dann ist es schlecht;) so was soltest du nich machen, lokal wie möglich deklarieren



procedure TForm1.btPlusClick(Sender: TObject);
begin
eResult.Text := IntToStr(StrToInt(eZahl1.Text)+StrToInt(eZahl2.Text));
end;


also deine vaiante war schon richtig...aber so siehts optimaler aus :)))

 
Antwort von GAST | 10.01.2008 - 19:37
Ich habe die proceduren einfach reingeschrieben, anstatt 2 Mal auf Button zu drücken, deswegen ging es nicht. Danke allen!

Verstoß melden
Hast Du eine eigene Frage an unsere Informatik-Experten?

13 ähnliche Fragen im Forum: 2 passende Dokumente zum Thema:
> Du befindest dich hier: Support-Forum - Informatik
ÄHNLICHE FRAGEN:
  • Informatik Delphi
    Hallo, brauche euro hilfe. und zwar muss einen taschenrechner mit delphi programmieren, der natürlich auch mehr soll als plus..
  • Delphi 7/Informatiker
    http://s14.directupload.net/file/d/2910/xzwc94x5_jpg.htm Ich hab ein paar kleine Fragen für Informatiker, die sich mit Delphi..
  • Delphi - Schleifen - Muster
    Hallo Leute wir haben jetz in Informatik Programmieren mit Delphi (Lazarus) und mit Schleifen angefangen und Sollen jetz ein ..
  • Delphi
    Ich wollte nur mal fragen ob jemand vielleicht eine Internet Seite kennt, wo man ein ähnliches Programm wie delphi ..
  • Delphi : Vortrag über Delphi - Hilfe gesucht
    Hallo Leute, ich soll morgen einen Vortrag in Informatik halten aber leider habe ich bis jetzt immer nur mit Java gearbeitet und..
  • Informatik Programm Delphi
    hallo was sagen diese 3 formeln aus 1. s=o; 2. for i = 1to10do 3. s:s+i;
  • mehr ...
BELIEBTE DOWNLOADS: