Hallo ihr Experten. Ich stehe auf dem Schlauch. Ich habe 2 Strings, die beide einen Wert zurückgeben. Bei dem ersten String haut alles hin. Bei dem 2. kommt eine Fehlermeldung: Der Objektverweis wurde nicht auf eine Objektinstanz festgelegt.
Hier der 1. String:
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:
| private string Überschrift_Generieren() { Strings_Leeren(); tabs = this.numericUpDown2.Value; for (int i = 0; i < tabs; i++) { tabs1 += "\t"; }
this.color = "color=\"" + ColorTranslator.ToHtml(this.button1.BackColor) + "\""; switch (this.comboBox1.SelectedIndex) { case 0: überschrift = "<h1>"; überschrift1 = "</h1>"; break; case 1: überschrift = "<h2>"; überschrift1 = "</h2>"; break; case 2: überschrift = "<h3>"; überschrift1 = "</h3>"; break; case 3: überschrift = "<h4>"; überschrift1 = "</h4>"; break; case 4: überschrift = "<h5>"; überschrift1 = "</h5>"; break; case 5: überschrift = "<h6>"; überschrift1 = "</h6>"; break; default: überschrift = "<h1>"; überschrift1 = "</h1>"; break; }
foreach (string s in checkedListBox1.CheckedItems) { switch (s) { case "<marquee>": marquee = "<marquee>"; marquee1 = "</marquee>"; break; case "<center>": center = "<center>"; center1 = "</center>"; break; case "<u>": typ += "<u>"; typ1 += "</u>"; break; case "<i>": typ += "<i>"; typ1 += "</i>"; break; case "<b>": typ += "<b>"; typ1 += "</b>"; break; } } this.text = this.richTextBox1.Text; test = überschrift + center + "<font" + " " + font + " " + color + " " + size1 + ">" + marquee + typ + text + typ1 + marquee1 + überschrift1 + center1 + color1 + font1; return test; |
Aufgerufen wird er dann so:
C#-Quelltext
1:
| MessageBox.Show(Überschrift_Generieren()); |
Hier der 2. String (mit der Fehlermeldung):
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:
| private string schriftzug_generator() { xytabs = this.numericUpDown3.Value; xysize = this.numericUpDown1.Value; for(int i = 0; i < xytabs; i++) { xtabs += "\t"; }
xcolor = "color=\"" + ColorTranslator.ToHtml(this.button8.BackColor) + "\""; xtext = this.richTextBox2.Text;
foreach(string s in checkedListBox2.CheckedItems) { switch (s) { case "<marquee>": xmarquee = "<marquee>"; xmarquee1 = "</marquee>"; break; case "<center>": xcenter = "<center>"; xcenter1 = "</center>"; break; case "<b>": xtyp += "<b>"; xtyp1 += "</b>"; break; case "<i>": xtyp += "<i>"; xtyp1 += "</i>"; break; case "<u>": xtyp += "<u>"; xtyp1 += "</u>"; break;
} }
this.xtest = xcenter + "<font" + xcolor + xfont + xsize.ToString() + ">" + xtyp + xmarquee + text + xmarquee1 + xtyp1 + "</font>" + xcenter1; return xtest; } |
Augerufen wird er wie der 1. String.
Die Form, auf der sich die Strings befinden wird so aufgerufen:
C#-Quelltext
1: 2: 3:
| Form6 a = new Form6(); a.überschrift_Transfer1 += new Form6.Überschrift_Transfer(s); a.ShowDialog(); |
Hier wird ein Event angehängt. Auf der Form mit den String befindet sich eine TabControl, mit 2 TabPages (Überschrift, Schriftzug). Bei der ersten TabPage haut alle hin. Bei der 2. kommt der Fehler. Woran liegt es?
Mfg :=)
Moderiert von
Th69: Titel geändert (statt einfach nur "Programmfehler").