public static MetrischeGewindegroesse getMetrischegewindegroesse() { //AB HIER GEWINDEGRÖßE Boolean gueltig; MetrischeGewindegroesse g = null; // initialisierung, ein NULL-Wert wird zugewiesen, damit er was hat / siehe MetrischeGewindegroesse.cs do { gueltig = true; try //Siehe kommentar bei catch { Console.WriteLine("Geben Sie die gewünschte Gewindegröße ein"); float input = (float)Convert.ToDouble(Console.ReadLine()); //Float wird verwendet, weil weniger Speicherplatz als double / EInklammerung forciert den double einen FLoat zu werden g = MassTabelle.getMetrischeGewindeG(input); //siehe Masstabelle.cs if (g == null) { Console.WriteLine("Nicht vorhanden"); //Wenn die eingegebene größe nicht gefunden wird, wird "null" returned und folgende ausgabe getätigt gueltig = false; } else { string s = g.printGewinde(); //Ausgabe der technischen Daten des gewählten Gewindes Console.WriteLine(s); } } catch (Exception) //(sinngemäß: testen und verarbeiten) rahmt einen Block von Anweisungen (try statements) ein und legt Reaktionen (catch statementes) fest, die im Fehlerfall ausgeführt werden. { //Wenn anstatt einer Zahl ein Buchstabe eingegeben wird, würde das Programm abstürzen. Durch try und catch wird der Fall abgefangen und folgendes ausgeführt: Console.WriteLine("Bitte geben Sie nur eine Zahl ein (kein M)"); gueltig = false; } } while (!gueltig); return(g); //gibt die Gewindegröße g zurück }
private void cBI_m42_Selected(object sender, RoutedEventArgs e) { float g = 42; s.metrischeGewindegroesse = MassTabelle.getMetrischeGewindeG(g); GewindegroessenErgaenzung(); }