Entwickler-Ecke
Freeware Projekte - Qualirechner -> Kritik
Xclusive - Do 19.03.09 21:00
Titel: Qualirechner -> Kritik
So mein erstes C# Programm ist fertig:
Ich würde mich über eine Bewertung freuen und über verbesserungsvorschläge.
Denkt bitte daran:
Ich bin Anfänger,
Hauptschüler :D
15 Jahre alt. Seit dem 12. März.
Danke
Ich hoffe ich darf das reinstellen.
mfg David
Download:
Christian S. - Do 19.03.09 21:12
Hallo!
Bitte gib einen direkten Downloadlink an oder hänge das Programm direkt an Deinen Beitrag an. Danke! :)
Grüße
Christian
P.S.: Wieso ist das Programm so groß? :shock:
Xclusive - Do 19.03.09 21:16
Ich weis es nicht sorry.
Vielleicht weger dem Hintergrundbild?
Ok, dass mit dem Dateianhang ist geklärt.
Yogu - Do 19.03.09 21:18
Christian S. hat folgendes geschrieben : |
| P.S.: Wieso ist das Programm so groß? :shock: |
Wieso, 1,93 MB sind doch für eine Anwendung mit einem großen Hintergrundbild noch ok.
Was mir aber auffällt: Das Fenster braucht ewig lange um sich zu zeichnen. Ich denke mal, das liegt genau an dem Hintergrundbild, das, so wie es aussieht, für jede Komponente nochmal gezeichnet werden muss. Einfachster Tipp: Lösche es ;)
Außerdem gibt es eine unbehandelte Ausnahme, wenn nichts eingegeben wurde, und auf "Berechnen" geklickt wird.
Ganz lustig wäre doch auch noch ein Hinweis, ob jetzt bestanden wird, oder nicht. Sonst funktioniert es ganz gut.
:zustimm:
Grüße,
Yogu
Xclusive - Do 19.03.09 21:30
Das mit dem Fehler weis ich Danke
Aber keine ahnung wie ich es beheben soll -.-
Das mit dem Hinweis weis ich leider acuh nicht.
Wollte ich machen.
mfg David
freak4fun - Do 19.03.09 21:34
Du solltest etwas mehr auf das Programm Wert legen und nicht sos ehr auf das Äußere. ;)
Xclusive - Do 19.03.09 21:38
Danke für den tip die meiste zeit hab ich fürs Design gebraucht :D
freak4fun - Do 19.03.09 22:36
Xclusive hat folgendes geschrieben : |
Das mit dem Fehler weis ich Danke
Aber keine ahnung wie ich es beheben soll -.- |
Versuch es mal mit:
Delphi-Quelltext
1: 2: 3: 4: 5:
| try ... except ... end; |
;)
Xclusive hat folgendes geschrieben : |
Das mit dem Hinweis weis ich leider acuh nicht.
Wollte ich machen. |
Dann mach es doch jetzt und lad die neue Version hoch. ;)
Du solltest deine Zahlen kleiner als 7 halten, wenn es Noten sind. ;)
jaenicke - Do 19.03.09 22:38
Die Oberfläche macht normalerweise den kleineren Teil eines Programms und der Arbeit damit aus. ;-)
Bei so kleinen Programmen ist das natürlich etwas anderes.
Was mir auffällt:
Das Hintergrundbild passt zu den Textfarben nicht richtig, denn der Text ist so schlecht lesbar. Vielleicht ginge das besser, wenn das Bild z.B. etwas aufgehellt würde.
Statt Int32.Parse solltest du lieber Int32.TryParse benutzen um einen Fehler dabei abzufangen, wenn keine Zahl eingegeben wurde.
Warum startest du explizit den Internet Explorer? Sowas nervt, lass doch Windows den Standardbrowser des Benutzers verwenden.
C#-Quelltext
1:
| Process.Start("http://www.google.de"); |
Warum das Laden so schleppend läuft, weiß ich nicht so genau, aber irgendetwas läuft da schief. Bei der Größe des Bildes könnte es auch einfach nur daran liegen.
freak4fun hat folgendes geschrieben : |
Versuch es mal mit:
Delphi-Quelltext 1: 2: 3: 4: 5:
| try ... except ... end; | ;) |
Es geht um ein .NET Programm in C#. ;-)
freak4fun - Do 19.03.09 22:49
Macht doch nichts. Ausnahmebehandlung gibts doch sogar in Java! ;) Warum nicht auch in C#. Aber danke für den Hinweis! :D
Xclusive - Fr 20.03.09 07:47
Vielen dank ich werde mich nach der Schule direkt hinsetzen (Naja, nachhilfe hab ich auch noch :-D)
Wie geht des das man nur Zahlen eingeben kann (1-6) Danke im vorraus
Bis dann
mfg David
Xclusive - Fr 20.03.09 12:58
Entschuldigung für die doppelte Antwort.
Das ist ziemlich unübersichtlich geworden.
Mein Code:
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:
| using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Text; using System.Windows.Forms;
namespace WindowsFormsApplication1 { public partial class Form1 : Form { public Form1() { InitializeComponent(); }
private void button1_Click(object sender, EventArgs e) { textBox13.Text = ((int.Parse(textBox1.Text) * 2 + int.Parse(textBox2.Text) * 2 + int.Parse(textBox3.Text) + int.Parse(textBox7.Text) * 2 + int.Parse(textBox8.Text) * 2 + int.Parse(textBox9.Text) + int.Parse(textBox4.Text) * 2 + int.Parse(textBox5.Text) + int.Parse(textBox6.Text) + int.Parse(textBox11.Text) + int.Parse(textBox12.Text) + int.Parse(textBox10.Text) * 2) / 18.0).ToString();
}
private void linkLabel1_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e) { string goTo = "proxy.kartoffel-hack.com/index.php?q=uggc%3A%2F%2Fjjj.grnz-hyz.qr%2F";
System.Diagnostics.Process.Start("iexplore.exe", goTo); }
private void linkLabel2_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e) { string goTo = "www.pennergame.de";
System.Diagnostics.Process.Start("iexplore.exe", goTo); }
private void linkLabel3_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e) { string goTo = "www.hsweis.schule.neu-ulm.de";
System.Diagnostics.Process.Start("iexplore.exe", goTo); } |
jaenicke - Fr 20.03.09 13:04
Dass der Quelltext so aussieht, war mir schon klar. .NET Programme lassen sich sehr gut disassemblieren. :mrgreen:
Bau als erstes einmal TryParse statt Parse ein. Dann kannst du die Prüfung in welchem Bereich die Eingaben sind auch gleich einbauen.
Xclusive - Fr 20.03.09 15:31
jaenicke hat folgendes geschrieben : |
Dass der Quelltext so aussieht, war mir schon klar. .NET Programme lassen sich sehr gut disassemblieren. :mrgreen:
Bau als erstes einmal TryParse statt Parse ein. Dann kannst du die Prüfung in welchem Bereich die Eingaben sind auch gleich einbauen. |
"Dann kannst du die Prüfung in welchem Bereich die Eingaben sind auch gleich einbauen" // Diesen Satz kapiere ich irgentwie nicht Sorry, könntest du den bitte anderst formulieren?
TryParse geht irgentwie nicht hab ich das falsch gemacht?
Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13:
| { textBox13.Text = ((int.TryParse(textBox1.Text) * 2 + int.TryParse(textBox2.Text) * 2 + int.TryParse(textBox3.Text) + int.TryParse (textBox7.Text) * 2 + int.TryParse(textBox8.Text) * 2 + int.TryParse(textBox9.Text) + int.TryParse(textBox4.Text) * 2 + int.TryParse(textBox5.Text) + int.TryParse(textBox6.Text) + int.TryParse(textBox11.Text) + int.TryParse(textBox12.Text) + int.TryParse(textBox10.Text) * 2) / 18.0).ToString();
} |
Fehler: Keine Überladung für die TryParse-Methode nimmt 1 Argumente an.
jaenicke - Fr 20.03.09 15:35
Xclusive hat folgendes geschrieben : |
| TryParse geht irgentwie nicht hab ich das falsch gemacht? |
TryParse gibt dir zurück, ob die Konvertierung erfolgreich war.
Schau dir den Befehl am besten in der Dokumentation an:
http://msdn.microsoft.com/en-us/library/f02979c7.aspx
C#-Quelltext
1: 2: 3:
| int test; if (Int32.TryParse(textBox1.Text, out test)) MessageBox.Show("Gültige Zahl: " + test.ToString()); |
Xclusive - Fr 20.03.09 15:41
Es geht irgentwie nicht :-) *verzweifelt*
Kann jemand schnell über TeamViewer schauen?
Bitte,
Hcoke schon ewig drann -.-
Währe demjenigen sehr Dankbar.
jaenicke - Fr 20.03.09 15:44
Xclusive hat folgendes geschrieben : |
| Es geht irgentwie nicht :-) *verzweifelt* |
Was heißt das? Ich habe doch ein konkretes Beispiel gepostet.
Wie hast du das denn jetzt versucht?
Jakob_Ullmann - Fr 20.03.09 17:17
Also es geht darum, dass Fehler behandelt werden. Du führst nachfolgenden Code immer nur aus, wenn es keine Exception gab, ansonsten wird halt gar nichts gemacht / du teilst dem Benutzer seinen Fehler mit.
Xclusive - Fr 20.03.09 17:19
also muss ich den code auf jede textBox schreiben?
jaenicke - Fr 20.03.09 17:39
C#-Quelltext
1: 2: 3: 4: 5: 6:
| int box1Value, box2Value; if (Int32.TryParse(textBox1.Text, out box1Value) && Int32.TryParse(textBox1.Text, out box2Value) ...) { } else MessageBox.Show("Ungültige Zahl"); |
Xclusive - Fr 20.03.09 18:23
jaenicke hat folgendes geschrieben : |
C#-Quelltext 1: 2: 3: 4: 5: 6:
| int box1Value, box2Value; if (Int32.TryParse(textBox1.Text, out box1Value) && Int32.TryParse(textBox1.Text, out box2Value) ...) { } else MessageBox.Show("Ungültige Zahl"); | |
Danke werde es testen :D
Des " int box1Value, box2Value; " wenn ich 13 textBoxen habe muss ich des dann erweitern "
int box1Value, box2Value, box3Value, box4Value; " so?
jaenicke - Fr 20.03.09 18:31
Xclusive hat folgendes geschrieben : |
Des " int box1Value, box2Value; " wenn ich 13 textBoxen habe muss ich des dann erweitern "
int box1Value, box2Value, box3Value, box4Value; " so? |
Ja, es gibt zwar auch bessere Möglichkeiten, aber wenn du mit Arrays und so noch nicht gearbeitet hast, dann ist es vielleicht besser es so zu machen.
Auch wenn das eigentlich mehr Arbeit beim Schreiben des Codes bedeutet. ;-)
Christian S. - Fr 20.03.09 18:32
Hallo!
Ich möchte darum bitten, Programmierfragen auch weiterhin in den Programmiersparten des Forums zu stellen und zu beantworten. Diese Sparte ist nur für die Programmvorstellungen da. Danke! :-)
Grüße
Christian
Xclusive - Fr 20.03.09 21:11
jaenicke hat folgendes geschrieben : |
Xclusive hat folgendes geschrieben : | Des " int box1Value, box2Value; " wenn ich 13 textBoxen habe muss ich des dann erweitern "
int box1Value, box2Value, box3Value, box4Value; " so? | Ja, es gibt zwar auch bessere Möglichkeiten, aber wenn du mit Arrays und so noch nicht gearbeitet hast, dann ist es vielleicht besser es so zu machen.
Auch wenn das eigentlich mehr Arbeit beim Schreiben des Codes bedeutet. ;-) |
vielen dank
Naja, damit muss ich leben hab mir schon eine DVD bestellt ((
http://www.galileocomputing.de/katalog/buecher/titel/gp/titelID-1943?GalileoSession=37881249A38SJ4.CQi8 ))
Ich hoffe das ist gut erklärt.
Ich kopier das einfach des erste mfg David
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2025 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!