Jest jakaś metoda, aby przy pobieraniu tekstu z textboxa pominąć np pierwszy znak?
Albo np do jednej zmiennej pobrać pierwszy znak, a do drugiej resztę?
Będę wdzięczny za wszelką pomoc.
Pozdro.
matv napisał(a)
Albo np do jednej zmiennej pobrać pierwszy znak, a do drugiej resztę?
Pozdro.
Text w TextBox to System.String, po którym można "latać" jak po tablicy, np:
String s = this.TextBox1.Text;
String s1 = s[0];
...
Teraz to nie czaję, musiałem sobie coś namieszać, bo próbowałem tak robić, ponieważ to ze zwykłego c++ znam i nie działało, a teraz działa normalnie.
Dzięki wielkie :)
edit:
a jednak nie tak łatwo :/
jak próbuję przepisać resztę łańcucha o nazwie text_mn do łańcucha tmp w następujący sposób:
System::String ^ tmp;
for(int i = 1; i<text_mn->Length;i++)
tmp[i-1] = text_mn[i];
To w linijce przypisania wyrzuca mi błąd:
error C3070: 'System::String::default': property does not have a 'set' method
a tmp musi być zdefiniowane jako
System::String ^ tmp
ponieważ jak definiuje bez uchwytu System:String tmp
to wtedy wyrzuca taki błąd:
error C3149: 'System::String' : cannot use this type here without a top-level '^'
Jakieś pomysły? Bo potrzebuję to na jutro skończyć, a ciągle coraz to nowsze problemy mam :/
Po prostu nie możesz ustawiać wartości znaków korzystając ze stringa jako tablicy (bo nie ma settera). Rozwiązaniem dla Ciebie jest String.Substring() z odpowiednimi parametrami zamiast zabawa z pętlami.
dzięki, właśnie o to chodziło.
Znalazłem jeszcze inne rozwiązanie: mianowicie klasa Windows::Text::StringBuilder - bardzo dobre narzędzia do modyfikacji stringów :)
dzięki jeszcze raz za pomoc.