Hvad er TextBox Control?
TextBox Control giver dig mulighed for at indtaste tekst i din formular under løbetiden. Standardindstillingen er, at den kun accepterer en tekstlinje, men du kan ændre den til at acceptere flere linjer. Du kan endda inkludere rullebjælker i din TextBox Control.
I denne vejledning lærer du
- Hvad er TextBox Control?
- TextBox egenskaber
- Tekstboksbegivenheder
- Sådan oprettes en TextBox
- Adgangskode karakter
- Newline i TextBox
- Henter heltalværdier
- LæsKun TextBox
- maks. længde
TextBox egenskaber
Følgende er de mest almindelige egenskaber ved Visual Basic TextBox-kontrollen:
- TextAlign - til indstilling af tekstjustering
- ScrollBars - til tilføjelse af rullepaneler, både lodrette og vandrette
- Multiline - for at indstille TextBox Control til at tillade flere linjer
- MaxLength - til angivelse af det maksimale tegnnummer, som TextBox Control accepterer
- Indeks - til angivelse af indekset for kontrolarray
- Enabled - til aktivering af tekstboksstyringen
- Readonly - hvis indstillet til sand, vil du være i stand til at bruge TextBox Control, hvis indstillet til false, vil du ikke være i stand til at bruge TextBox Control.
- SelectionStart - til indstilling eller hentning af startpunktet for TextBox Control.
- SelectionLength - til indstilling eller hentning af antallet af tegn, der er valgt i TextBox Control.
- SelectedText - returnerer den TextBox-kontrol, der aktuelt er valgt.
Tekstboksbegivenheder
Formålet med begivenheder er at få TextBox Control til at reagere på brugerhandlinger såsom et klik, et dobbeltklik eller ændring i tekstjustering. Her er de almindelige begivenheder for TextBox Control:
- AutoSizeChanged - Udløst af en ændring i egenskaben AutoSize.
- ReadOnlyChanged - Udløst af en ændring af egenskaben ReadOnly.
- Klik - Udløst af et klik på TextBox Control.
Sådan oprettes en TextBox
Trin 1) For at oprette en TextBox skal du trække TextBox-kontrollen fra værktøjskassen til WindowForm:
Trin 2)
- Klik på den TextBox-kontrol, du har føjet til formularen.
- Gå til Egenskaber-sektionen nederst til venstre på skærmen. Skift navnet på tekstboksen fra TextBox1 til HelloTextBox:
Trin 3) Tilføj følgende kode for at tilføje tekst til kontrolelementet:
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load'Add text to the controlHelloTextBox.Text = "Hello. Welcome to Guru99!"End Sub
Trin 4) Du kan nu køre koden ved at klikke på Start-knappen i øverste bjælke:
Trin 5) Du skal have følgende formular:
Her er et screenshot af den komplette kode til ovenstående:
Forklaring af kode:
- Oprettelse af en offentlig klasse ved navn Form1
- Oprettelse af en underprocedure ved navn Form1_Load. Det kaldes, når formularen indlæses.
- En kommentar. VB.net-kompilatoren springer dette over.
- Afslut underproceduren
- Afslut klassen.
Adgangskode karakter
Nogle gange vil du have et tekstfelt, der skal bruges til at skrive en adgangskode. Dette betyder, at uanset hvad der er skrevet i det tekstfelt for at forblive fortroligt. Dette er muligt med VB.net. Det kan gøres ved hjælp af PasswordChar- egenskaben, som giver os mulighed for at bruge ethvert tegn, du ønsker. Lad os demonstrere dette ved hjælp af et eksempel:
Begynd med at oprette et nyt projekt. Træk to TextBox-kontrolelementer, to etiketter og en knap ind i formularen. Skift teksterne på de to etiketter og knappen til følgende:
Klik på tekstfeltet ved siden af brugernavnetiketten, flyt til sektionen Egenskaber nederst til venstre i vinduet. Giv det navnet UsernameField.
Gør det samme for TextBox Control ved siden af adgangskodeetiketten og giver det navnet PasswordField.
Du skal nu få PasswordField TextBox Control til at vise * for hvert tegn, der er indtastet. Tilføj følgende kode:
Private Sub PasswordField_TextChanged(sender As Object, e As EventArgs) Handles PasswordField.TextChangedPasswordField.PasswordChar = "*"End Sub
Kør nu koden ved at klikke på Start-knappen. En formular vises.
Indtast brugernavnet og adgangskoden, og følg, hvad der sker. Du skal se følgende:
Brugernavnet vises, men adgangskoden er skjult. Her er koden til ovenstående:
Forklaring af kode:
- Oprettelse af en klasse ved navn Form1.
- Oprettelse af en underprocedure med navnet PasswordField_textchanged (). Det kaldes, når formularen indlæses.
- Brug af PasswordChar-egenskaben til at vise *, når en bruger indtaster adgangskoden.
- Afslutning af underproceduren.
- Afslutter klassen.
Newline i TextBox
Som standard kan du kun oprette en tekstlinje i et tekstfelt. Der er to måder, hvorpå vi kan opnå dette. Lad os diskutere dem.
Træk og slip en TextBox-kontrol til din formular. Giv kontrollen navnet GuruWelcome.
Klik på tekstboksstyringen igen, og flyt musemarkøren til afsnittet Egenskaber. Skift værdien af egenskaben Multiline til True.
Alternativt kan du indstille egenskaben Multiline til sand i din kode som følger:
GuruWelcome.Multiline = Sandt
Tilføj følgende kode:
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.LoadGuruWelcome.Multiline = TrueGuruWelcome.Text = "Line 1"GuruWelcome.Text = GuruWelcome.Text & ControlChars.NewLine & "Line 2"End Sub
Efter udførelse adskilles de to tekstlinjer.
Forklaring af kode:
- Oprettelse af en klasse ved navn Form1
- Oprettelse af en underrutine ved navn Form1_Load ()
- Indstilling af egenskaben Multiline til True. Tekstboksen kan tage mere end en linje.
- Tilføjelse af den første tekstlinje til tekstboksen.
- Tilføjelse af den anden tekstlinje til tekstboksen. Controlchars.NewLine egenskaben hjælper os med at opdele de to linjer.
- Afslutning af underrutinen.
- Afslutter klassen.
Henter heltalværdier
VB.net behandler alt som en streng. Det betyder, at du læser et heltal fra tekstboksen som en streng, så konverterer du det til et heltal. Dette gøres normalt ved hjælp af Integer.Parse () -metoden.
For at demonstrere dette skal du oprette en ny tekstboksstyring plus en knap. Giv tekstfeltet navnets alder. Giv knappen navnet Button1. Du skal have følgende grænseflade:
Tilføj følgende kode:
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.ClickDim x As Integerx = Integer.Parse(age.Text)MessageBox.Show(x)
Kør koden, og indtast din alder i tekstboksen. Klik på knappen Vis alder. Du skal se følgende:
Den værdi, du indtaster, returneres i en MessageBox.
Forklaring af kode:
- Oprettelse af en klasse ved navn Form1.
- Oprettelse af en underprocedure ved navn Button1_Click. Det kaldes, når der klikkes på knappen.
- Definition af en heltalsvariabel med navnet x.
- Konvertering af den læste værdi fra tekstfeltet med navnet age til et heltal.
- Viser værdien konverteret i ovenstående trin i en MessageBox.
- Afslutning af underproceduren.
- Afslutter klassen.
LæsKun TextBox
Du kan oprette en tekstboks læsbart. Dette betyder, at brugeren ikke kan ændre den værdi, der vises i tekstboksen. For at gøre dette skal du indstille egenskaben ReadOnly til True. For at demonstrere dette skal du oprette en ny tekstboks og give den navnet guru99. Tilføj følgende kode:
Private Sub guru99_TextChanged(sender As Object, e As EventArgs) Handles guru99.TextChangedguru99.Text = "welcome to Guru99"guru99.ReadOnly = TrueEnd Sub
Koden skal returnere følgende:
Her er koden:
Forklaring af kode:
- Oprettelse af en klasse ved navn Form1.
- Oprettelse af en subrutine ved navn guru99_TextChanged.
- Tilføjelse af tekst til tekstboksen med navnet guru99.
- Indstilling af tekstfeltets egenskab ReadOnly til True. Dette gør teksten i tekstboksen umodificerbar.
- Afslutning af underproceduren.
- Afslutter klassen.
maks. længde
Egenskaben MaxLength kan hjælpe dig med at indstille det maksimale antal ord eller tegn, som tekstboksen tillader. For at demonstrere dette skal du oprette en TextBox-kontrol og give den navnet fullName. Tilføj følgende kode:
Private Sub fullName_TextChanged(sender As Object, e As EventArgs) Handles fullName.TextChangedfullName.MaxLength = 8End Sub
Kør koden, og prøv at skrive dit fulde navn. Du vil ikke være i stand til at skrive mere end 8 tegn, med mellemrum inkluderet:
Koden:
Kode Forklaring:
- Oprettelse af en klasse ved navn Form1.
- Oprettelse af en underprocedure med navnet fullName_TextChanged.
- Gør det fuldnavn tekstfelt accepterer maksimalt kun 8 tegn.
- Afslutning af underproceduren.
- Afslutter klassen.
Resumé:
- TextBox Control giver dig mulighed for at indtaste tekst i din formular under løbetiden. Det er godt at få input fra brugerne.
- Standardindstillingen er, at TextBox Control kun accepterer en tekstlinje. Det er dog muligt for dig at ændre dette.
- Du kan skjule, hvad brugeren skriver i TextBox, især når du har brug for at fange adgangskoder.
- Du kan også indstille det maksimale antal tegn, du skal indtaste i TextBox.
- Du kan gøre din TextBox ikke-redigerbar, hvilket betyder, at brugerne ikke kan ændre den tekst, der vises på den.