Hva er TextBox Control?
TextBox Control lar deg legge inn tekst i skjemaet ditt i løpet av kjøretiden. Standardinnstillingen er at den bare aksepterer en tekstlinje, men du kan endre den for å godta flere linjer. Du kan til og med inkludere rullefelt i TextBox Control.
I denne veiledningen vil du lære
- Hva er TextBox Control?
- Tekstboksegenskaper
- Tekstbokshendelser
- Hvordan lage en TextBox
- Passordkarakter
- Newline i TextBox
- Henter heltallverdier
- LesBare TextBox
- maks lengde
Tekstboksegenskaper
Følgende er de vanligste egenskapene til Visual Basic TextBox-kontrollen:
- TextAlign - for innstilling av tekstjustering
- Rulle - for å legge rullefelt, både vertikal og horisontal
- Multiline - for å stille inn TextBox Control for å tillate flere linjer
- MaxLength - for å spesifisere maksimalt tegnnummer som TextBox Control godtar
- Indeks - for å spesifisere indeksen til kontrollmatrisen
- Aktivert - for aktivering av tekstboksstyring
- Skrivebeskyttet - hvis satt til sant, vil du kunne bruke TextBox Control, hvis satt til false, vil du ikke kunne bruke TextBox Control.
- SelectionStart - for å angi eller få startpunktet for TextBox Control.
- SelectionLength - for innstilling eller henting av antall tegn som er valgt i TextBox Control.
- SelectedText - returnerer TextBox Control som er valgt for øyeblikket.
Tekstbokshendelser
Hensikten med hendelser er å få TextBox Control til å svare på brukerhandlinger som et klikk, et dobbeltklikk eller endring i tekstjustering. Her er de vanligste hendelsene for TextBox Control:
- AutoSizeChanged - Utløst av en endring i AutoSize-egenskapen.
- ReadOnlyChanged - utløses av en endring av eiendomsverdien ReadOnly.
- Klikk - Utløst av et klikk på TextBox-kontrollen.
Hvordan lage en TextBox
Trinn 1) For å opprette en TextBox, dra TextBox-kontrollen fra verktøykassen til WindowForm:
Steg 2)
- Klikk på TextBox-kontrollen du har lagt til i skjemaet.
- Gå til Egenskaper-delen nederst til venstre på skjermen. Endre navnet på tekstboksen fra TextBox1 til HelloTextBox:
Trinn 3) Legg til følgende kode for å legge til tekst i kontrollen:
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
Trinn 4) Du kan nå kjøre koden ved å klikke Start-knappen øverst på linjen:
Trinn 5) Du bør få følgende skjema:
Her er et skjermbilde av den komplette koden for ovenstående:
Forklaring av kode:
- Opprette en offentlig klasse som heter Form1
- Opprette en underprosedyre som heter Form1_Load. Det blir ringt når skjemaet lastes inn.
- En kommentar. VB.net-kompilatoren hopper over dette.
- Avslutt delprosedyren
- Avslutt timen.
Passordkarakter
Noen ganger vil du at en tekstboks skal brukes til å skrive inn et passord. Dette betyr at det som blir skrevet inn i tekstboksen for å forbli konfidensielt. Dette er mulig med VB.net. Det kan gjøres ved hjelp av PasswordChar- egenskapen som lar oss bruke hvilket tegn du vil. La oss demonstrere dette ved hjelp av et eksempel:
Begynn med å lage et nytt prosjekt. Dra to TextBox-kontroller, to etiketter og en knapp inn i skjemaet. Endre tekstene på de to etikettene og knappen til følgende:
Klikk tekstboksen ved siden av brukernavnetiketten, flytt til Egenskaper-delen nederst til venstre i vinduet. Gi det navnet UsernameField.
Gjør det samme for TextBox Control ved siden av Password label, og gir den navnet PasswordField.
Du bør nå lage PasswordField TextBox Control * for hvert tegn som er skrevet inn. Legg til følgende kode:
Private Sub PasswordField_TextChanged(sender As Object, e As EventArgs) Handles PasswordField.TextChangedPasswordField.PasswordChar = "*"End Sub
Kjør nå koden ved å klikke Start-knappen. Et skjema vil dukke opp.
Skriv inn brukernavnet og passordet og følg hva som skjer. Du bør se følgende:
Brukernavnet vises, men passordet er skjult. Her er koden for ovenstående:
Forklaring av kode:
- Opprette en klasse som heter Form1.
- Opprette en underprosedyre som heter PasswordField_textchanged (). Det blir ringt når skjemaet lastes inn.
- Bruke PasswordChar-egenskapen for å vise * når en bruker skriver inn passordet.
- Avslutter underprosedyren.
- Avslutter timen.
Newline i TextBox
Som standard kan du bare opprette en tekstlinje i en tekstboks. Det er to måter vi kan oppnå dette på. La oss diskutere dem.
Dra og slipp en TextBox-kontroll til skjemaet ditt. Gi kontrollen navnet GuruWelcome.
Klikk tekstbokskontrollen igjen og flytt musepekeren til Egenskaper-delen. Endre verdien på Multiline-egenskapen til True.
Alternativt kan du sette Multiline-egenskapen til sann i koden din på følgende måte:
GuruWelcome.Multiline = Sant
Legg til 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
Ved utførelse blir de to tekstlinjene skilt.
Forklaring av kode:
- Opprette en klasse som heter Form1
- Opprette en underrutine kalt Form1_Load ()
- Sett Multiline-egenskapen til True. Tekstboksen vil kunne ta mer enn én linje.
- Legge til den første tekstlinjen i tekstboksen.
- Legge til den andre tekstlinjen i tekstboksen. Controlchars.NewLine-egenskapen hjelper oss med å dele de to linjene.
- Avslutter underrutinen.
- Avslutter timen.
Henter heltallverdier
VB.net behandler alt som en streng. Dette betyr at du leser et heltall fra tekstboksen som en streng, og deretter konverterer du det til et helt tall. Dette gjøres normalt ved hjelp av Integer.Parse () -metoden.
For å demonstrere dette, opprett en ny tekstbokskontroll pluss en knapp. Gi tekstboksen navnet på alderen. Gi knappen navnet Button1. Du bør ha følgende grensesnitt:
Legg til 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)
Kjør koden, og skriv inn alderen din i tekstboksen. Klikk på Vis alder-knappen. Du bør se følgende:
Verdien du oppgir returneres i en MessageBox.
Forklaring av kode:
- Opprette en klasse som heter Form1.
- Opprette en underprosedyre som heter Button1_Click. Det blir ringt når du klikker på knappen.
- Definere en heltalsvariabel med navnet x.
- Konvertering av verdien som er lest fra tekstboksen med navnet age til et helt tall.
- Viser verdien konvertert i trinnet ovenfor i en MessageBox.
- Avslutter underprosedyren.
- Avslutter timen.
LesBare TextBox
Du kan lage en tekstboks skrivebeskyttet. Dette betyr at brukeren ikke vil kunne endre verdien som vises i tekstboksen. For å gjøre dette, setter du egenskapen ReadOnly til True. For å demonstrere dette, opprett en ny tekstboks og gi den navnet guru99. Legg til 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 av kode:
- Opprette en klasse som heter Form1.
- Opprette en underrutine kalt guru99_TextChanged.
- Legge til tekst i tekstboksen kalt guru99.
- Sette ReadOnly-egenskapen til tekstboksen til True. Dette gjør teksten i tekstboksen umodifiserbar.
- Avslutter underprosedyren.
- Avslutter timen.
maks lengde
Egenskapen MaxLength kan hjelpe deg med å angi maksimalt antall ord eller tegn som tekstboksen tillater. For å demonstrere dette, opprett en TextBox-kontroll og gi den navnet fullName. Legg til følgende kode:
Private Sub fullName_TextChanged(sender As Object, e As EventArgs) Handles fullName.TextChangedfullName.MaxLength = 8End Sub
Kjør koden og prøv å skrive inn ditt fulle navn. Du kan ikke skrive mer enn åtte tegn, med mellomrom:
Koden:
Kode Forklaring:
- Opprette en klasse som heter Form1.
- Opprette en underprosedyre som heter fullName_TextChanged.
- Å få fullboksen til å godkjenne maksimalt bare 8 tegn.
- Avslutter underprosedyren.
- Avslutter timen.
Sammendrag:
- TextBox Control lar deg legge inn tekst i skjemaet ditt i løpet av kjøretiden. Det er bra for å få innspill fra brukere.
- Standardinnstillingen er at TextBox Control bare godtar en tekstlinje. Det er imidlertid mulig for deg å endre dette.
- Du kan skjule hva brukeren skriver inn i TextBox, spesielt når du trenger å fange passord.
- Du kan også angi det maksimale antall tegn du trenger for å bli lagt inn i TextBox.
- Du kan gjøre TextBox uredigerbar, noe som betyr at brukerne ikke vil kunne endre teksten som vises på den.