Entwickler-Ecke
Freeware Projekte - Brutto - Netto Rechner
Stadtfuchs - Do 25.08.05 10:33
Titel: Brutto - Netto Rechner
hiho,
ich bin anfänger und habe als einstiegsaufgabe einen brutto-netto rechner geschrieben. getestet ist er aber ich bin mir sicher das da bestimmt noch irgendwelche fehler/verbesserungsmöglichkeiten drin sind :roll:
wäre echt nett wenn ihr euch das programm mal anseht und mir tipps gebt. bin für jeden hinweiss dankbar :wink:
mfg
stadtfuchs
Lannes - Do 25.08.05 11:45
Hallo,
erstmal :welcome: im DF
für einen Anfänger schon mal gut :)
und nun etwas konstruktive Kritik:
•Fehleingaben abzufangen ist schon wichtig, aber deshalb dem Anwender die Tastatureingabe zu blockieren :shock:, könntest z.B. bei den Tasten "0 bis 9, Komma und = das OnClick der Buttons auslösen, ist aber nicht die Ideallösung.
•Die Beschriftung des Buttons ">" sagt nichts über die Funktion aus, eventuell in "> %" oder so ähnlich ändern.
•Der Button "=" ist aktiv, wenn noch kein Prozentsatz eingegeben ist,
betätige ich ihn ohne eine Eingabe kommt die Fehlermeldung "ist kein gültiger Gleitkommawert" und dann werden verschiedene Buttons deaktiviert.
Die Abläufe der Deaktivierung/Aktivierung der Buttons ist so nicht ok.
Im Zusammenhang mit dem vorigen Punkt wäre es besser die Prozentangabe mit einem zusätzlichen Editfeld zu realisieren, dadurch läßt sich die Steuerung der Anwendung besser programmieren und Du hast zusätzlich die Möglichkeit einer Vorbelegung mit einem Standard-Prozentsatz. Bei einigen Buttons ist sicherlich noch ein zusätzlicher Hinweis zur Funktion angebracht. >> Eigenschaft Hint
• Menüpunkte(z.B. "Info") die ins Leere laufen sollte man nicht einbauen,
Menüpunkte die man angelegt hat und noch nicht mit einer Funktion ausgestattet sind kann man mit visible = False erstmal verbergen.
• Deine eingebaute Steuerung bzgl. Maximieren, Wiederherstellen und Größenveränderung der Anwendung ist doch arg gewöhnungsbedürftig.
Schau Dir mal dazu die Eigenschaften BorderIcons und BorderStyle des Forms an.
Stadtfuchs - Do 25.08.05 11:56
danke für die tipps :D
ich setz mich gleich mal dran
wenn das programm soweit aktualisiert ist lade ich das nochmal hoch
weiter tipps erwünscht :wink:
stadtfuchs
Dragon777 - Do 25.08.05 12:01
Wie wärs mit sowas Stadtfuchs
Hab ich in der ersten woche geschrieben.
Brutto netto rechner was hälst du davon?
Matthias-K - Do 25.08.05 12:05
dragon, 1 tastendruck, und dein programm geht in den jordan!
man sollte einem anfänger nicht wirklich ein programm vorlegen, welches total fehlerhaft ist.
er soll es ja lernen, wie man es richtig macht! und nicht anders rum!
matthias
Dragon777 - Do 25.08.05 12:08
was meinst du mit damit,was drückst du denn? bei mir läufts
Wie wärs mit dem hat weniger fehler-oder auch keine.
Matthias-K - Do 25.08.05 12:10
wenn ich im oberen feld nicht eingebe, und einfach nur die pürozent erhöhe, schmiert er ab! wenn ich "ausversehen" einen buchstaben eingebe, schmiert er ab! was ist mit gebrochenen prozentwerten? und ich hab des ding nur knappe 30 sek getestet!
Dragon777 - Do 25.08.05 12:14
Achso das ja da fehlen noch en paar sachen ich weiß. Ich meinte ja auch eigentlich nur das er es von der aufmachung als beispiel nehmen könnte. aber das zweite ist besser hab ich vorher gemacht. hat halt weniger funktionen.
Edit: Is des besser?
Matthias-K - Do 25.08.05 12:21
von der aufmachung?
nein! um gottes willen!
er sitzt zusammen mit mir im büro! er ist der lehrling und soll später programme schreiben! und wenn ich ihn auch nur einmal erwische mir so ein programm abzuliefern!
ja, schön bunt ist es aber fehlerfrei nicht! wieder absturz!
wenn du schon versuchst, tipps zu geben, sorge dafür das sie funktionieren und sich auch verwendene lassen!
matthias
Dragon777 - Do 25.08.05 12:26
Ist der fehler bei dem zweiten programm aufgetreten?
Was für einer?
Edit: hab den fehler entdeckt-ich nehme an es ist abgestürzt als du nen buchstaben reingeschrieben hast net wahr?-wird verbessert
Und übrigens geht des auch etwas netter.schließlich kann man selbst nicht immer jeden fehler finden da man meistens nur die sachen eingibt die funzen.
Allerdings bei dem ersten download haste recht-ich habs nochmal getestet und schäm mich grad des hier reingestzt zu haben-werds gleich mal korrigieren.
Achja nochwas was hälst du von diesem rechenprog. haben schon mehrere leute ausprobiert ohne fehler. vielleicht entdeckst du ja einen(hoffe aber nicht).
Matthias-K - Do 25.08.05 12:34
ja in beiden!
bevor ich ein programm veröffentliche, teste ich es auch! zumindest ansatzweise! und das erste, was ich bei nem taschenrechner teste, ist, ob man buchastaben eingeben kann, und wie der darauf reagiert!
also, das programm ist fehlerhaft ohne ende! und ich kann prozente immernoch ne mit komma angeben!
matthias
Matthias-K - Do 25.08.05 12:39
ich hab grad dein "fehlerfreies" programm getestet! auser, das ich nicht weis, wie man das programm bedienen muss, hab ich knapp 40 sek gebraucht!
und danke, das du zur erheiterung unseres team's beiträgst!
'Warum klickst du hier?'
was solln das? was muss man dort machen? und wieso bekomm ich ständig fließkomme fehler?
übrigens, der lachkrampf hat länger durchgehalten als das testen!
Dragon777 - Do 25.08.05 12:42
mist hab grad selbst nen kleinen fehler in meinem rechenprog entdeckt bei geteilt zeigt er immer falsch an. Verbesserung wird gemacht.
Sorry bin eben auch noch anfänger lerns erst seit ca 3-4 wochen.(brings mir selbst ohne hilfe bei).
Edit: du mußt erst auf das label - klich dir zwei zahlen- klicken dann auf die rechenart dann kannste des ergebnis eingeben und auf = klicken
klick mal auf lösung dann kannste wieder lachen
Edit2:Ich bekomm nur en flieskomma fehlermeldung wenn ich nix eintip und auf geteilt geh
Matthias-K - Do 25.08.05 12:45
kannst du mir ein handbuch zur verwendung von dem letzten programm geben? weil ich weis nicht, was ich eigentlich dort machen muss! und ich möchte es ja mal richtig testen!
und da ich keine struktur erkenne, was man eigentlich machen soll, kann ich es noch nicht testen! zumal ich alles mögliche versucht habe!
also, ich würde gerne weiter testen!
Dragon777 - Do 25.08.05 12:49
im vorigen beitrag ist die erklärung
Edit: na hats geklappt?
Mach mir bitte dann mal ne fehlerliste wann ein fehler auftritt damit ich es verbessern kann. Danke im voraus.
Lannes - Do 25.08.05 13:58
Hallo,
'Warum klickst du hier?' :rofl:
@Dragon777
Solltest dein Programm in Scherzrechner umbenennen,
sag mal, hast Du Dir das Programm von
Stadtfuchs mal angeschaut. :?:
Glaube eher nicht, sonst wäre Deines hier nicht aufgetaucht.
Fehlerliste:
• Anwenderführung fehlt
• Programm nur für Brillenträger die ihre Brille vergessen haben geeignet, entweder kleinere Schrift oder Einstellbar programmieren.
• Eingabe 0 Button "/" >> "Fehler bei Fließkomma..."
• Richtige Lösungsangabe bei Nachkommastellen wird als "Falsch" gewertet.
• Fehleingaben werden nicht abgefangen
• Steuerung Minimieren, Maximieren usw. nicht bearbeitet
• Quatsch >> Meldung "Vertippt??", ok und dann?
• "Klick dir zwei
zahlen" = Rechtschreibfehler
• "Klick dir zwei zahlen" wird danach auf "Wähle die Rechenart" umbenannt. Habe ich jetzt eine Rechenart gewählt, kann dann nur noch eine Rechenart gewählt werden?
• Buttons werden als Labels genutzt, Labels als Buttons?
• Zusätzliche Hinweisfenster können minimiert werden, danach werden diese aber bei Bedarf nicht automatisch maximiert.
• Für jede Meldung ein extra Formular eingebunden >> Programmgröße?
@Stadtfuchs
bleib bei deinem Ansatz, geht in die richtige Richtung. :wink:
Matthias-K - Do 25.08.05 14:07
mahlzeit!
auch, wenn ich es mir nur schwer verkneifen konnte, in meiner wohlverdienten mittagspause dein programm zu testen, habe ich es doch geschafft! ich schau mir dieses nicht wieder an, bis es von dir überarbeitet wurde.
ich würde dich sogar dazu anreizen, alle deine programme mal zu überdenken! stylistisch wie programmiertechnich! mich würde auch mal der quelltext interessieren!
poste ihn mal oder schick ihn mir per link oder in datei form!
matthias
Dragon777 - Do 25.08.05 14:10
Also erstmal danke lannes für den netten beitrag. :)
Das mit der 0 und / hab ich schon bemerkt
und des mit der nachkommastelle auch
bei quatsch vertippt? einfach wegklicken ist nur so als hinweiß gedacht gewesen damit man nachguckt wo man was falsches eingetippt hat
des mit min und max fand ich net so wichtig - des fenster hat ja schon ne gute größe oder?
klick dir zwei wird umbenannt-danach kannste trotzdem wieder drauf klicken aber hast recht ,muß des noch ändern
des mit den buttons und labels war so beabsichtigt-könnte ich aber auch ohne prob. ändern
was meinst mit extraformular eingebunden>>programmgröße?
Dragon777 - Do 25.08.05 14:14
Hier ist der Code
Unit1
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:
| unit Unit1;
interface
uses Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls;
type TForm1 = class(TForm) Button1: TButton; Button2: TButton; Button3: TButton; Button4: TButton; Label1: TLabel; Label2: TLabel; Label3: TLabel; Button5: TButton; Button6: TButton; Edit1: TEdit; Label4: TLabel; Label5: TLabel; Label6: TLabel; procedure Label3Click(Sender: TObject); procedure Button1Click(Sender: TObject); procedure Button2Click(Sender: TObject); procedure Button3Click(Sender: TObject); procedure Button4Click(Sender: TObject); procedure Button6Click(Sender: TObject); procedure Button5Click(Sender: TObject); procedure Label5Click(Sender: TObject);
private public end;
var Form1: TForm1; Zahl1, Zahl2, x, Ergebnis: Real;
implementation
uses Unit2, Unit3;
{$R *.DFM}
procedure TForm1.Label3Click(Sender: TObject); begin Edit1.SetFocus; randomize; Zahl1 := random (10000); Zahl2 := random (10000); Label1.Caption := FloatToStr (Zahl1); Label2.Caption := FloatToStr (Zahl2); Label3.Caption := 'Wähle die Rechenart!'; end;
procedure TForm1.Button1Click(Sender: TObject); begin Edit1.SetFocus; Ergebnis := Zahl1 + Zahl2; Button5.Caption := '+'; end;
procedure TForm1.Button2Click(Sender: TObject); begin Edit1.SetFocus; Ergebnis := Zahl1 - Zahl2; Button5.Caption := '-'; end;
procedure TForm1.Button3Click(Sender: TObject); begin Edit1.SetFocus; Ergebnis := Zahl1 * Zahl2; Button5.Caption := '*'; end;
procedure TForm1.Button4Click(Sender: TObject); begin Edit1.SetFocus; Ergebnis := Zahl1 / Zahl2; x:= Zahl1 / Zahl2; Button5.Caption := '/'; end;
procedure TForm1.Button6Click(Sender: TObject); begin Edit1.SetFocus;
if Button5.Caption = '+' then Button1Click(Form1); if Button5.Caption = '-' then Button2Click(Form1); if Button5.Caption = '*' then Button3Click(Form1); if Button5.Caption = '/' then Button4Click(Form1);
if ergebnis = x then Label4.Caption :='' + FloatToStrF(Ergebnis,ffnumber, 8, 2)
else Label4.Caption := FloatToStr(Ergebnis); try if Ergebnis= StrToFloat (Edit1.Text) then Label6.Caption :='Richtig' else Label6.Caption :='Falsch'; except Label6.Caption :='Quatsch' ; showmessage ('Vertippt??'); end;
end;
procedure TForm1.Button5Click(Sender: TObject); begin Form3.visible := true; end;
procedure TForm1.Label5Click(Sender: TObject); begin Form2.visible := true; end;
end. |
Unit2
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:
| unit Unit2;
interface
uses Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs, ExtCtrls;
type TForm2 = class(TForm) Image1: TImage; private public end;
var Form2: TForm2;
implementation
{$R *.DFM}
end |
Unit3
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:
| unit Unit3;
interface
uses Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs, ExtCtrls;
type TForm3 = class(TForm) Image1: TImage; private public end;
var Form3: TForm3;
implementation
{$R *.DFM}
end. |
Lannes - Do 25.08.05 14:49
Hallo,
Dragon777 hat folgendes geschrieben: |
| ...bei quatsch vertippt? einfach wegklicken ist nur so als hinweiß gedacht gewesen damit man nachguckt wo man was falsches eingetippt hat? |
...damit man nachguckt wo man was falsches >> das sollte das Programm einem schon sagen.oder?
Dragon777 hat folgendes geschrieben: |
des mit min und max fand ich net so wichtig - des fenster hat ja schon ne gute größe oder? |
es ist schon wichtig, das dass Programm nicht kleiner als für die Schalter benötigt gezogen werden kann. Warum soll ich es vergrößern können, wenn es nie erforderlich ist?
Dragon777 hat folgendes geschrieben: |
des mit den buttons und labels war so beabsichtigt-könnte ich aber auch ohne prob. ändern |
Ist ja schon mal ein Anfang. Meinst Du mit beabsichtigt, den Anwender zu irritieren?
Dragon777 hat folgendes geschrieben: |
was meinst mit extraformular eingebunden>>programmgröße? |
Du hast in Form2 und Form3 nur Meldungstext stehen, das kann in einer Form realisiert werden, also nur den Text bei Bedarf ändern. Sehe gerade in deinem Code das Du in Form2 und Form3 ein Image eingebunden hast. Also Image raus und über Text in einer Form, oder besser noch nur Showmessage verwenden.
das Ergebnis ist dann in der Programmgröße eine Reduzierung um ca. 50%.
Dragon777 - Do 25.08.05 15:28
also mit den buttons wollte ich niemanden irritieren :)
hab einfach nur rumprobiert
Und des mit unit2 unit 3 des hab ich nur so gemacht weil ich mit paint des bild und dem text gemacht habe und mit showmessage wird des net do dargestellt( jedenfalls meines wissens nicht) und ne andre möglichkeit des so anzeigen zu lassen wie beim selbsterstellten Image kenn ich noch net.
Vielleicht hast du ja eine idee.
Lannes - Do 25.08.05 18:42
Hallo,
das weicht hier zu sehr vom Thema ab, glaube der Thread-Ersteller wollte hier Tipps zu seinem Programm bekommen,
mach doch für deine letzte Frage ein neues Thema auf.
Stadtfuchs - Fr 26.08.05 13:05
so, ich habe eine neue version meines rechners. ist noch nicht alles verbessert, weil ich mich im moment noch mit "schmuddellösungen" zufrieden gebe. hauptsache es funktioniert "irgendwie". danach kommt dann die umstellung auf einen anständigen code. ich denke mal, da man als noob noch nicht weiss wie man bestimmte sachen vernünftig realisieren kann, ist diese einstellung wohl nicht so schlimm hoffe ich.
ach ja, den quellcode für die hilfe habe ich aus einem tutorial übernommen (jaja, ich weiss: codedieb...)
mfg
stadtfuchs
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2026 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!