Delphi-PRAXiS

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

fuman111 18. Jan 2008 08:06


kartenrechner
 
hi ich wollte einen karten rechner (zb rollschuhbahn etc....) ist das denkt ihr so ok ?

unit Unit1;

interface

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

type
TForm1 = class(TForm)
Edit1: TEdit;
RadioGroup1: TRadioGroup;
Button1: TButton;
Button2: TButton;
Button3: TButton;
Button4: TButton;
Panel1: TPanel;
RadioButton1: TRadioButton;
Panel2: TPanel;
procedure Button1Click(Sender: TObject);
procedure Button3Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure Button4Click(Sender: TObject);
private
{ Private-Deklarationen }
public
{ Public-Deklarationen }
end;

var
Form1: TForm1;
anzahl, eintrittspreis, saunapreis, endpreis, einzelpreis : INTEGER;


implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
begin
Form1.Close;

end;

procedure TForm1.Button3Click(Sender: TObject);
begin
Panel1.Caption := ' ';
Edit1.Text := ' ';
Form1.RadioGroup1.ItemIndex := -1;
end;

procedure TForm1.Button2Click(Sender: TObject);
begin
showMessage('Dein Name und das heutige datum');
end;

procedure TForm1.Button4Click(Sender: TObject);
begin
// eingabe
if Form1.Edit1.Text = '' THEN
showMessage('Nix du')
else
anzahl := StrToInt(Form1.Edit1.Text);

Case Form1.RadioGroup1.ItemIndex of
-1 : showMessage('Sie haben nichts ausgewählt');
0 : eintrittspreis := 3;
1 : eintrittspreis := 6;
2 : eintrittspreis := 4;
end;

if Form1.RadioButton1.Checked THEN
saunapreis := 5
else
saunapreis := 0;
// verarbeitung
einzelpreis := eintrittspreis;
endpreis := (eintrittspreis * anzahl) + saunapreis;
// ausgabe
Form1.Panel1.Caption := 'Einzelpreis: '+IntToStr(einzelpreis)+'€';
Form1.Panel2.Caption := 'Gesamtpreis: '+IntToStr(endpreis)+'€';
end;

end.

STS301 18. Jan 2008 08:09

Re: kartenrechner
 
try and error, funktioniert bei dir etwa etwas nicht?

Nikolas 18. Jan 2008 08:20

Re: kartenrechner
 
Hallo und willkommen im Forum :dp:

Über dem Eingabefeld für den Text gibt es einen Button [Delphi-Code], der dafür zuständig ist, tags zu erzeugen, um das Syntaxhighlighting anzuschalten.

Wenn du also um deinen Code
[delphi*]Hier dein Code [/delphi*] schreibst (ohne die Sternchen) wirds etwas lesbarer. (Die Editfunktion ist übrigens oben rechts über deinem Beitrag)

Zu deinem Code:
Du solltest deine Komponenten benennen! Den Button1 könntest du wunderbar Bclose nennen usw.
Denn sage mir mal schnell und ohne das Programm zu starten, was das hier bedeutet: :mrgreen:
Delphi-Quellcode:
procedure TForm1.Button3Click(Sender: TObject);
begin
Panel1.Caption := ' ';
Edit1.Text := ' ';
Form1.RadioGroup1.ItemIndex := -1;
end;

DP-Maintenance 18. Jan 2008 08:23

DP-Maintenance
 
Dieses Thema wurde von "Matze" von "Programmieren allgemein" nach "Sonstige Fragen zu Delphi" verschoben.
Delphi-Frage

Reinhardtinho 18. Jan 2008 09:01

Re: kartenrechner
 
Was ist/macht denn der Kartenrechner? (Ich lese nur was von Saunapreis, Rollschuhbahn) :gruebel:

Wenn du eine kurze Beschreibung gibst, dann können wir dir vielleicht helfen, herauszufinden, ob es "ok" ist. :mrgreen:

MFG
Lorenz

DeddyH 18. Jan 2008 09:04

Re: kartenrechner
 
Was mir aufgefallen ist:
Delphi-Quellcode:
if Form1.Edit1.Text = '' THEN
  showMessage('Nix du')
else
  anzahl := StrToInt(Form1.Edit1.Text);
Was machst Du, wenn man 'ABC' eingibt?

Aurelius 18. Jan 2008 09:10

Re: kartenrechner
 
Zitat:

Zitat von Reinhardtinho
Was ist/macht denn der Kartenrechner? (Ich lese nur was von Saunapreis, Rollschuhbahn) :gruebel:

Wenn du eine kurze Beschreibung gibst, dann können wir dir vielleicht helfen, herauszufinden, ob es "ok" ist. :mrgreen:

MFG
Lorenz

Ich nehme an es soll ei Kartenautomat werden ^^

Ergänzung zu DeddyH: Schau deswegen nach TryStrToInt()

s-off 18. Jan 2008 09:21

Re: kartenrechner
 
Zitat:

Zitat von xX0815Xx
[

Ergänzung zu DeddyH: Schau deswegen nach TryStrToInt()

In diesem Fall wäre wohl 'StrToIntDef' besser geeignet, da TryToStrInt einen boolschen Ausdruck zurückgibt.

DeddyH 18. Jan 2008 09:24

Re: kartenrechner
 
Das kommt darauf, wie man reagieren möchte: Standard übernehmen oder Fehlermeldung ausgeben.

s-off 18. Jan 2008 09:26

Re: kartenrechner
 
Zitat:

Zitat von DeddyH
Das kommt darauf, wie man reagieren möchte: Standard übernehmen oder Fehlermeldung ausgeben.

Deswegen sagte ich ja explizit in diesem Fall, denn
Delphi-Quellcode:
anzahl := StrToInt(Form1.Edit1.Text);
:zwinker:

DeddyH 18. Jan 2008 09:29

Re: kartenrechner
 
Ich hatte damit gemeint, dass es dem TE überlassen ist, wie er im Fehlerfall reagieren möchte. Soll ein Standardwert übernommen werden, ist StrToIntDef besser, ansonsten TryStrToInt.

s-off 18. Jan 2008 09:30

Re: kartenrechner
 
Zitat:

Zitat von DeddyH
Ich hatte damit gemeint, dass es dem TE überlassen ist, wie er im Fehlerfall reagieren möchte. Soll ein Standardwert übernommen werden, ist StrToIntDef besser, ansonsten TryStrToInt.

ok, einigen wir uns einfach darauf, aneinander vorbei geredet zu haben.

DeddyH 18. Jan 2008 09:31

Re: kartenrechner
 
OK :cheers:


Alle Zeitangaben in WEZ +1. Es ist jetzt 09:00 Uhr.

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