suche bessere Lösung für Prüfung auf Vollständigkeit
-
Hallo,
ich suche eine bessere Lösung, oder mal so gefragt, wie würdet Ihr das Problem
lösen?Problem:
je nach Vorgabe der möglichen Werte, kann das Prg verschiedene Variablen zur Eingabe haben, minimal 3 maximal 11
es sind drei verschiedene Rechnungsvarianten möglich in Abhängigkeit der Eingabeneine Prüfung ob die Boxen mit den richtigen Werten gefüllt wird, wird bei der Eingabe geprüft, ich prüfe aber nicht auf Vollständigkeit
dieses wird erst beim Klick auf den Button Berechnen ausgeführt.
Meine Lösung ist zZ so:
bei einer Prüfung mit min. 3 Wertenprivate: System::Void toolStripButtonGo_Click(System::Object^ sender, System::EventArgs^ e) { //pruefe ob StatusAnzeige OFF ist if (toolStripMenuItemProgressBar->Checked==false) { bool rechnen = true; String ^tex=""; //Prüfe Rechnugsfunktion Schnellrechner if (toolStripMenuItemSchnellrechner->Checked==true) { if (textBoxLinkLaenge->Text == String::Empty) { tex=tex->Insert(tex->Length,labelLink->Text+" \r\n"); rechnen = false; } if (textBoxSpleisse->Text == String::Empty) { tex=tex->Insert(tex->Length,labelVerbindung->Text+" \r\n"); rechnen = false; } if (textBoxVerbindungen->Text == String::Empty) { tex=tex->Insert(tex->Length,labelSpleisse->Text+" \r\n"); rechnen = false; } if (rechnen==false) { con(tex); } else { //wenn alle Daten vorhanden sind->Rechnen //*************************************** } } }
Beschreibung:
Prüfe auf Hilfsfunktion //muss sein, da sonst die selektive Hilfe eingreift
Prüfe auf Berechnungsvariante //muss sein da andere Eingabeboxen leer sind
Prüfe Eingabeboxen auf Empty
Ausgabe Message über con, welche Felder leer sindspeziell geht es mir um eine Lösung der Prüfung auf Empty der Boxen, da diese
bei der maximalen Variante recht lang wirdgibt es da bessere Lösungen?
mfg
-
Mir fällt nur noch:
String::IsNullOrEmpty(...)
ein...
-
ich würde außerdem auf Gültigkeit prüfen - ein leeres Feld ist ja ungültig
außerdem könntest Du die TextBoxen in ein Array packen und alles in einer Schleife abfragen
-
hi,
@Jochen
das werde ich nutzen,mir ist bis jetzt auch nichts besseres eingefallen
da die Eingabemasken zu variabel sind und auch die möglichen Lösungen stark
von den zur Verfügung stehenden Eingaben abhängen wird es wohl keine weitere Vereinheitlichung geben@mogel
ich prüfe ja ob die dann zur Rechnung nötigen Felder leer sind!!Array? hmmm.... da ich nicht wissen kann was der Kunde an möglichen Werten zur Hand hat, kann ich also auch nicht vorher festlegen welche Eingabemasken nun zur Rechnung herangezogen werden können.
Erst nach min. 3 Eingaben entscheidet das Prg automatisch oder manuell welche Variante gültig wird.@all
da liegt ja das Problem, da eine Lösung mit verschiedenen Ausgangswerten möglich ist und ich das Prg recht variabel halten wollte bzw auch eine grobe Analyse gemacht werden kann (deshalb auch min. 3 Werte) gibt es mehrere mögliche Ausgangsvarianten.mir bleibt also wahrscheinlich nur der lange Weg
mfg
-
Array? hmmm.... da ich nicht wissen kann was der Kunde an möglichen Werten zur Hand hat, kann ich also auch nicht vorher festlegen welche Eingabemasken nun zur Rechnung herangezogen werden können.
Erst nach min. 3 Eingaben entscheidet das Prg automatisch oder manuell welche Variante gültig wird.Du könntest aber mittels einer Schleife die Controls durchlaufen. Falls die Boxen nicht aktiv sind, überspringst du den Test. Ist natürlich nur schwer nachzuvollziehen wie dein Programm denn aussieht...
-
hi,
hier mal ein Schema, vll kann man es dann besser verstehen
http://sunfox-new.de/image/Schema_Logig.jpg
wobei es nicht alles an Routinen darstellen wird, aber die Grundfunktion der
beschriebenen Problematik sollte erkennbar seinmfg