fireman0022 Geschrieben 11. August 2011 Geschrieben 11. August 2011 Moin Ich habe im Forum schon die SuFu benutzt, aber ich habe nichts gefunden bzw. wusste nicht nach was ich suchen muss. Meine Probleme: ------------------------------ Ich möchte, dass ich den letzten angegeben Buchstaben aus einer Textbox löschen kann. Also 1234 -> 123 Mein Versuch: display = textBox1 private void back_Click(object sender, EventArgs e) { display.Text = display.Text.Length -1; } ------------------------------ Ähnliches Problem: Ich möchte ein +/- in der ersten Stelle der Textbox hinzufügen, ohne das erste Zeichen zu löschen. Das hier war am Ende ein verzweiflungsversuch... private void plusminus_Click(object sender, EventArgs e) { if (display.Text.Length(1) == "+") { pm = display.Text; display.Text = "-"; display.Text += pm; } else { pm = display.Text; display.Text = "+"; display.Text += pm; } } Wäre gut wenn ihr mir helfen könnt. MfG Fire Zitieren
HJST1979 Geschrieben 11. August 2011 Geschrieben 11. August 2011 Hallo ich bin zwar nicht der geborene C# Programmierer aber habs trotzdem versucht 1. Problem: display.Text = display.Text.Substring(0, display.Text.Length - 1); 2. Problem: display.Text = string.Concat("+", display.Text); Gruß Hans-Jörg Zitieren
fireman0022 Geschrieben 11. August 2011 Autor Geschrieben 11. August 2011 Servus Danke für deine Antwort. Problem 1 ist gefixed. ----- Bei Problem 2 wird zwar ein Plus (bzw. Minus) an erster Stelle hinzugefügt, aber ich wollte es eigentlich so, dass wenn da ein Plus ist das es durch ein Minus ersetzt wird und andersrum. (Wie beim Windows-Taschenrechner) MfG Fire Zitieren
SilentDemise Geschrieben 11. August 2011 Geschrieben 11. August 2011 Ich versteh den Sinn ehrlich gesagt nicht?! Zitieren
fireman0022 Geschrieben 11. August 2011 Autor Geschrieben 11. August 2011 Das ist einer der wichtigsten Mathematischen Funktionen^^ Zitieren
SilentDemise Geschrieben 11. August 2011 Geschrieben 11. August 2011 ich meinte eigentlich deine Funktion. geht es dir um mathematische Funktionen oder um das Vorzeichen der Zahl? Zitieren
HJST1979 Geschrieben 11. August 2011 Geschrieben 11. August 2011 Bei Problem 2 wird zwar ein Plus (bzw. Minus) an erster Stelle hinzugefügt, aber ich wollte es eigentlich so, dass wenn da ein Plus ist das es durch ein Minus ersetzt wird und andersrum. (Wie beim Windows-Taschenrechner) Na das sollte jetzt aber doch kein Problem mehr sein. Kleine Gedankenstütze: WENN erstes Zeichen = "+" ODER "-" DANN -->WENN erstes Zeichen ein "+" -->DANN concat("-", Substring (1, ...)) -->SONST concat("+", Substring (1, ...)) SONST Concat("+", display.Text) In code kannst es bestimmt selbst "umwandeln", sollst es ja lernen Zitieren
fireman0022 Geschrieben 11. August 2011 Autor Geschrieben 11. August 2011 joa hat geklappt, danke euch In C++ geht das einfacher Eigentlich will ich es lernen, "sollen" muss ich nichts^^ Zitieren
Sacaldur Geschrieben 12. August 2011 Geschrieben 12. August 2011 eine andere Möglichkeit, wie man das anstellen könnte, wäre: man wandelt die Zeichenkette in eine Zahl um (beispielsweise mit Convert.ToInt32(String)) multipliziert diese mit -1 und wandelt die Zahl wieder in eine Zeichenkette um Vorteil: man hat nicht dieses Konstrukt der Fallunterscheidung und (Schätzungsweise) weniger Code Nachteil: die Eingabe muss sich in eine Zahl umwandeln lassen -> es dürfen nur Ziffern vorhanden sein -> es dürfen ggf. keine führenden Nullen vorhanden sein -> es kann eventuell bei Dezimaltrennzeichen (ist das der richtige Begriff?) zu Problemen kommen die Eingabe muss mit dem gewählten Datentyp kompatibel sein - Ganzzahlen -> keine Kommazahlen -> eingeschränkter Wertebereich (beispielsweise Int32: -2^31 bis (2^31)-1 - Fließkommazahlen -> ungenau je nachdem, was der Taschenrechner später alles können soll, musst du abwägen, was du verwendest Zitieren
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.