Backspace - odmazávání písmen v TextBoxu   zodpovězená otázka

VB.NET, WinForms

Dobry den, jsem zacatecnik a chtel bych se zeptat jesli nekdo nevi jak na tuto ulohu: mam textbox a do nej napisi nejaky text a chci aby po stisknuti Button se tento text mazal odzadu, zkratka aby se delo to same co se deje pri mackani Backspace akorat ze by tuto funkci zastalo tlacitko button. Help pleas

nahlásit spamnahlásit spam 0 odpovědětodpovědět

Odpověď najdete v seriálu pro začátečníky, konkrétně v díle o práci s textovými řetězci: http://www.vbnet.cz/clanek--45-vb_net_od...

nahlásit spamnahlásit spam 0 odpovědětodpovědět

vyresil jsem to tedy takto

Dim delka As Integer
        Dim znak As Char
        delka = textbox1.Text.Length
        znak = textbox1.Text.Chars(delka - 1)
        textbox1.Text = textbox1.Text.TrimEnd(znak)

ale doufal jsem ze by moh byt VB tak chytry ze bych vyuzil primo neco jako vbBack , tedy jestli to jde ... nebo neco podobneho co by zastupovalo primo klavesu.

nahlásit spamnahlásit spam 0 odpovědětodpovědět

Šlo by to i trochu přímočařeji, tohle navíc nebude fungovat, pokud budou na konci dva stejné znaky. Vy si totiž zjistíte poslední znak a zavoláte TrimEnd, které jej odřízne. Pokud tam ale budou dva stejné, ořízne oba dva.

Správně se to dá napsat na jeden řádek, stačí použít medodu Substring, která vybere část z nějakého textu:

TextBox1.Text = TextBox1.Text.Substring(0, TextBox1.Text.Length - 1)

První parametr této metody je pozice, na které chcete začít, 0 je začátek, a druhý parametr, tedy TextBox1.Text.Length - 1 je počet znaků, které se mají vybrat.

nahlásit spamnahlásit spam 0 odpovědětodpovědět

aha, dik moc, jak genialni a jednoduchy, kdyz se vi jak na to ...

nahlásit spamnahlásit spam 0 odpovědětodpovědět
                       
Nadpis:
Antispam: Komu se občas házejí perly?
Příspěvek bude publikován pod identitou   anonym.
  • Administrátoři si vyhrazují právo komentáře upravovat či mazat bez udání důvodu.
    Mazány budou zejména komentáře obsahující vulgarity nebo porušující pravidla publikování.
  • Pokud nejste zaregistrováni, Vaše IP adresa bude zveřejněna. Pokud s tímto nesouhlasíte, příspěvek neodesílejte.

přihlásit pomocí externího účtu

přihlásit pomocí jména a hesla

Uživatel:
Heslo:

zapomenuté heslo

 

založit nový uživatelský účet

zaregistrujte se

 
zavřít

Nahlásit spam

Opravdu chcete tento příspěvek nahlásit pro porušování pravidel fóra?

Nahlásit Zrušit

Chyba

zavřít

feedback