Delphi-PRAXiS
Seite 4 von 6   « Erste     234 56      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Taschenrechner (https://www.delphipraxis.net/106993-taschenrechner.html)

Enten Mann 21. Jan 2008 12:33

Re: Taschenrechner
 
PI ist doch 3.14...................

Danke werdes ma Testen und hast du vllt die Delphi Hilfe Datei?

Welches delphi hast du?

quendolineDD 21. Jan 2008 12:40

Re: Taschenrechner
 
PI auf die ersten 100 Zeichen nach dem Komma ...

Zitat:

π = 3,14159 26535 89793 23846 26433 83279 50288 41971 69399 37510 58209 74944 59230 78164 06286 20899 86280 34825 34211 70679 ...
Es sind Firmen direkt tätig mit einem riesen Netzwerk an Rechnern weltweit, um neue Nachkommastellen von Pi zu berechnen ... Ich würde mich mit den paar zufrieden geben ;) Kannst ja eh nicht alles anzeigen. Speicher dir doch entweder Pi nochmal als Konstante (oder in Unit Math dürfte Pi auch deklariert sein)

Grüße

Enten Mann 21. Jan 2008 12:52

Re: Taschenrechner
 
JO man ey wo bekomme ich diese delphi hilfe datei her?

Mein Code momentan:
Delphi-Quellcode:
unit Unit1; {Name der Unit}

interface

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

type
  TForm1 = class(TForm)
    Image0: TImage;
    Image1: TImage;
    Image2: TImage;
    Image8: TImage;
    Image5: TImage;
    Image3: TImage;
    Image7: TImage;
    Image6: TImage;
    Image4: TImage;
    Image9: TImage;
    Mal: TImage;
    Back: TImage;
    Geteilt: TImage;
    Gleich: TImage;
    Plus: TImage;
    Punkt: TImage;
    Rechts: TImage;
    Links: TImage;
    Minus: TImage;
    Exp: TImage;
    Edit1: TEdit;

    { Procedure Starts }
    procedure Button1Click(Sender: TObject);
    procedure Image0Click(Sender: TObject);
    procedure Image1Click(Sender: TObject);
    procedure Image2Click(Sender: TObject);
    procedure Image3Click(Sender: TObject);
    procedure Image4Click(Sender: TObject);
    procedure Image5Click(Sender: TObject);
    procedure Image6Click(Sender: TObject);
    procedure Image7Click(Sender: TObject);
    procedure Image8Click(Sender: TObject);
    procedure Image9Click(Sender: TObject);

    procedure btnLinksClick(Sender: TObject);
    procedure btnRechtsClick(Sender: TObject);
    procedure btnPlusClick(Sender: TObject);
    procedure btnPunktClick(Sender: TObject);
    procedure btnMalClick(Sender: TObject);
    procedure btnGeteiltClick(Sender: TObject);
    procedure btnExpClick(Sender: TObject);
    procedure btnMinusClick(Sender: TObject);
    procedure btnGleichClick(Sender: TObject);
    procedure GleichClick(Sender: TObject);


  { Procedure Ends }
    private
      { Private-Deklarationen }
    public
      { Public-Deklarationen }
  end;

var
  Form1: TForm1; //Hier werden die Globalen Variablen definiert

implementation

{$R *.DFM}

procedure TForm1.Button1Click(Sender: TObject); //Unser OnClick-Ereignis
var
  zahl1, zahl2, ergebnis: integer; //Unsere Variablen
begin
  Edit1.Text:=IntToStr(2*StrToInt(Edit1.Text))
end;


{ Zahlen Buttons }
procedure TForm1.Image0Click(Sender: TObject);
begin
  Edit1.Text := Edit1.Text + '0';
end;

procedure TForm1.Image1Click(Sender: TObject);
begin
  Edit1.Text := Edit1.Text + '1';
end;

procedure TForm1.Image2Click(Sender: TObject);
begin
  Edit1.Text := Edit1.Text + '2';
end;

procedure TForm1.Image3Click(Sender: TObject);
begin
  Edit1.Text := Edit1.Text + '3';
end;

procedure TForm1.Image4Click(Sender: TObject);
begin
  Edit1.Text := Edit1.Text + '4';
end;

procedure TForm1.Image5Click(Sender: TObject);
begin
  Edit1.Text := Edit1.Text + '5';
end;

procedure TForm1.Image6Click(Sender: TObject);
begin
  Edit1.Text := Edit1.Text + '6';
end;

procedure TForm1.Image7Click(Sender: TObject);
begin
  Edit1.Text := Edit1.Text + '7';
end;

procedure TForm1.Image8Click(Sender: TObject);
begin
  Edit1.Text := Edit1.Text + '8';
end;

procedure TForm1.Image9Click(Sender: TObject);
begin
  Edit1.Text := Edit1.Text + '9';
end;

{ Zahlen Buttons }




{ Symbole }
procedure TForm1.btnLinksClick(Sender: TObject);
begin
  Edit1.Text := Edit1.Text + '(';
end;

procedure TForm1.btnRechtsClick(Sender: TObject);
begin
  Edit1.Text := Edit1.Text + ')';
end;

procedure TForm1.btnPlusClick(Sender: TObject);
begin
  Edit1.Text := Edit1.Text + '+';
end;


procedure TForm1.btnMalClick(Sender: TObject);
begin
  Edit1.Text := Edit1.Text + '*';
end;

procedure TForm1.btnMinusClick(Sender: TObject);
begin
  Edit1.Text := Edit1.Text + '-';
end;

procedure TForm1.btnGeteiltClick(Sender: TObject);
begin
  Edit1.Text := Edit1.Text + '/';
end;

procedure TForm1.btnPunktClick(Sender: TObject);
begin
  Edit1.Text := Edit1.Text + ',';
end;

procedure TForm1.btnGleichClick(Sender: TObject);
begin
  Edit1.Text := Edit1.Text + '='
end;

procedure TForm1.btnExpClick(Sender: TObject);
begin
  Edit1.Text := format('%1.4f',[pi]);
end;
{ Symbole }

end.

Blackheart 21. Jan 2008 13:23

Re: Taschenrechner
 
btnLinksClick... so war das nicht gemeint, ein Image btn zu nennen.
Wenn das Programm mal etwas größer wird wirst Du wahrscheinlich nicht mal mehr selbst durchsteigen.
Vieleicht währe erst mal einer Anfängertutorial nicht schlecht.

Edit: Hier mal ein kleiner Überblick für Abkürzungen und ein Tutorial
http://www.epinasoft.com/delphikurs/dkk_compnames.html

Enten Mann 21. Jan 2008 13:28

Re: Taschenrechner
 
Danke Blackheart

patti 21. Jan 2008 15:57

Re: Taschenrechner
 
Hier mal eine kurze Idee, wie ich es wohl machen würde:

1. Ein Edit auf dem Formular platzieren, in edInput umbenennen und ReadOnly auf true setzen.
2. 9 Images nehmen und ebenfalls auf dem Formular platzieren und entsprechend anordnen.
3. Den Images erstmal aussagekräftige Namen geben, z.B. imgZahl1 - imgZahl9
4. Den Images die entsprechenden Bilder zuweisen.
5. Den Images über den OI Tags zuweisen: Dem Bild mit der Zahl 1 den Tag 1 zuweisen, der 2 den Tag 2 usw.
6. Einem Image eine OnClick-Routine hinzufügen. Dazu im OI auf "Ereignisse" wechseln und hinter "OnClick" einen Doppelklick machen. Im Quelltext in deiner OnClick-Routine dann folgendes:

Delphi-Quellcode:
edInput.Text := edInput.Text + inttostr((Sender as TImage).Tag);
7. Diese Routine musst du nun allen 9 Images zuweisen. Dazu wählst du sie alle auf deinem Formular aus und wählst aus der Liste bei den OnClick-Ereignissen im OI imgZahl1Click aus. Somit rufen alle neun Images die gleiche Routine auf.

Neu für dich dürfte der letzte Teil des Codes sein. inttostr() ändert eine Zahl (integer) in eine Zeichenkette (string) um. Sender ist der "Aufrufer" der Routine, also je nach Image eben diese Komponente. Den Tag des Images legst du ja zuvor für alle Zahlen fest. Je nach "Aufrufer" ist dieser also anders und beinhaltet immer die Zahl.

Versuch es mal so, wie ich es dir beschrieben habe. Wenn alles klappt, dann kommt der nächste Schritt mit den Rechenzeichen. Wenn was unklar sein sollte, einfach fragen ;-)

Patti

Enten Mann 21. Jan 2008 17:21

Re: Taschenrechner
 
Oh ne doch en Prob irgendwie funtz das mit dem imgZahl1Click net hab alles amrkiert aber kann das dann net auswählen.

EDIT:
Habe sie alle einzeln gemacht aber irgendwas ist flasch das Fenster kommt und schließt sofort wieder.

Hier der Code, weiß net was nicht was kaputt ists es sofort wieder zugeht:
Delphi-Quellcode:
unit Unit1; {Name der Unit}

interface

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

type
  TForm1 = class(TForm)
    Header: TImage;
    imgZahl1: TImage;
    imgZahl2: TImage;
    imgZahl3: TImage;
    imgZahl4: TImage;
    imgZahl5: TImage;
    imgZahl6: TImage;
    imgZahl7: TImage;
    imgZahl8: TImage;
    imgZahl9: TImage;
    imgZahl0: TImage;

    imgLinks: TImage;
    imgGeteilt: TImage;
    imgBack: TImage;
    imgExp: TImage;
    imgGleich: TImage;
    imgMinus: TImage;
    imgPlus: TImage;
    imgRechts: TImage;
    imgPunkt: TImage;
    procedure imgZahl1Click(Sender: TObject);

  { Procedure Starts }

  { Procedure Ends }
    private
      { Private-Deklarationen }
    public
      { Public-Deklarationen }
  end;

var
  Form1: TForm1; //Hier werden die Globalen Variablen definiert
 
implementation

{$R *.DFM}

procedure TForm1.imgGleichClick(Sender: TObject); //Unser OnClick-Ereignis
var
  zahl1, zahl2, ergebnis: integer; //Unsere Variablen
begin
  edInput.Text:=IntToStr(2*StrToInt(Edit1.Text))
end;


procedure TForm1.imgZahl1Click(Sender: TObject);
begin
edInput.Text := edInput.Text + inttostr((Sender as TImage).Tag);
end;

end.

Mokuba01 21. Jan 2008 18:15

Re: Taschenrechner
 
Hier ist nochmal ein Beispielprogramm zur Berechnung von Pi.
Möge es dir helfen.
Gruß Mokuba01

Enten Mann 21. Jan 2008 18:59

Re: Taschenrechner
 
Zitat:

Zitat von Mokuba01
Hier ist nochmal ein Beispielprogramm zur Berechnung von Pi.
Möge es dir helfen.
Gruß Mokuba01

wo denn?

Mokuba01 21. Jan 2008 20:38

Re: Taschenrechner
 
Liste der Anhänge anzeigen (Anzahl: 1)
Oh, Mist!!! :wall: Hatte vollkommen vergessen anzuhengen!!! :wall: :wall: :wall:

Hier kommts (Und zwar wirklich).
Gruß Mokuba01


Alle Zeitangaben in WEZ +1. Es ist jetzt 23:03 Uhr.
Seite 4 von 6   « Erste     234 56      

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz