Wat is TextBox Control?
Met het TextBox-besturingselement kunt u tijdens runtime tekst in uw formulier invoeren. De standaardinstelling is dat het slechts één regel tekst accepteert, maar u kunt het wijzigen om meerdere regels te accepteren. U kunt zelfs schuifbalken opnemen in uw TextBox-besturingselement.
In deze tutorial leer je
- Wat is TextBox Control?
- TextBox-eigenschappen
- Textbox-evenementen
- Hoe maak je een TextBox
- Wachtwoord karakter
- Newline in TextBox
- Geheel getalwaarden ophalen
- ReadOnly TextBox
- maximale lengte
TextBox-eigenschappen
Dit zijn de meest voorkomende eigenschappen van het Visual Basic TextBox-besturingselement:
- TextAlign - voor het instellen van tekstuitlijning
- ScrollBars - voor het toevoegen van schuifbalken, zowel verticaal als horizontaal
- Multiline - om het TextBox-besturingselement zo in te stellen dat meerdere regels zijn toegestaan
- MaxLength - voor het specificeren van het maximale aantal tekens dat de TextBox Control accepteert
- Index - voor het specificeren van de index van de besturingsarray
- Ingeschakeld - voor het inschakelen van de tekstvakbesturing
- Alleen-lezen - indien ingesteld op true, kunt u de TextBox Control gebruiken, indien ingesteld op false, kunt u de TextBox Control niet gebruiken.
- SelectionStart - voor het instellen of verkrijgen van het startpunt voor de TextBox Control.
- SelectionLength - voor het instellen of ophalen van het aantal tekens dat is geselecteerd in de TextBox Control.
- SelectedText - retourneert het TextBox-besturingselement dat momenteel is geselecteerd.
Textbox-evenementen
Het doel van gebeurtenissen is om de TextBox Control te laten reageren op gebruikersacties zoals een klik, een dubbelklik of een wijziging in de tekstuitlijning. Dit zijn de algemene gebeurtenissen voor de TextBox-besturing:
- AutoSizeChanged : wordt geactiveerd door een wijziging in de eigenschap AutoSize.
- ReadOnlyChanged - Getriggerd door een wijziging van de waarde van de eigenschap ReadOnly.
- Klik - Wordt geactiveerd door een klik op het TextBox-besturingselement.
Hoe maak je een TextBox
Stap 1) Om een TextBox te maken, sleept u het TextBox-besturingselement van de toolbox naar het WindowForm:
Stap 2)
- Klik op het TextBox-besturingselement dat u aan het formulier hebt toegevoegd.
- Ga naar het gedeelte Eigenschappen linksonder op het scherm. Wijzig de naam van het tekstvak van TextBox1 in HelloTextBox:
Stap 3) Voeg de volgende code toe om tekst aan het besturingselement toe te voegen:
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
Stap 4) U kunt de code nu uitvoeren door op de Start-knop in de bovenste balk te klikken:
Stap 5) U zou het volgende formulier moeten krijgen:
Hier is een screenshot van de volledige code voor het bovenstaande:
Toelichting code:
- Een openbare klasse maken met de naam Form1
- Een subprocedure maken met de naam Form1_Load. Het wordt aangeroepen wanneer het formulier wordt geladen.
- Een reactie. De VB.net-compiler zal dit overslaan.
- Beëindig de subprocedure
- Beëindig de les.
Wachtwoord karakter
Soms wilt u dat een tekstvak wordt gebruikt om een wachtwoord in te voeren. Dit betekent dat alles wat in dat tekstvak wordt getypt, vertrouwelijk blijft. Dit is mogelijk met VB.net. U kunt dit doen met de eigenschap PasswordChar , waarmee we elk teken kunnen gebruiken dat u maar wilt. Laten we dit demonstreren aan de hand van een voorbeeld:
Begin met het maken van een nieuw project. Sleep twee TextBox-besturingselementen, twee labels en één knop naar het formulier. Verander de teksten op de twee labels en de knop in het volgende:
Klik op het tekstvak naast het gebruikersnaamlabel en ga naar het gedeelte Eigenschappen linksonder in het venster. Geef het de naam UsernameField.
Doe hetzelfde voor het TextBox-besturingselement naast het wachtwoordlabel en geef het de naam PasswordField.
U moet nu de PasswordField TextBox Control laten zien * voor elk teken dat erin wordt getypt. Voeg de volgende code toe:
Private Sub PasswordField_TextChanged(sender As Object, e As EventArgs) Handles PasswordField.TextChangedPasswordField.PasswordChar = "*"End Sub
Voer nu de code uit door op de Start-knop te klikken. Er verschijnt een formulier.
Typ de gebruikersnaam en het wachtwoord en kijk wat er gebeurt. Je zou het volgende moeten zien:
De gebruikersnaam wordt weergegeven, maar het wachtwoord is verborgen. Hier is de code voor het bovenstaande:
Toelichting code:
- Een klasse maken met de naam Form1.
- Een subprocedure maken met de naam PasswordField_textchanged (). Het wordt aangeroepen wanneer het formulier wordt geladen.
- Gebruik de eigenschap PasswordChar om * weer te geven terwijl een gebruiker het wachtwoord typt.
- Beëindiging van de subprocedure.
- De klas beëindigen.
Newline in TextBox
Standaard kunt u slechts één regel tekst in een tekstvak maken. Er zijn twee manieren waarop we dit kunnen bereiken. Laten we ze bespreken.
Sleep een TextBox-besturingselement naar uw formulier. Geef de besturing de naam GuruWelcome.
Klik nogmaals op het tekstvakbesturingselement en verplaats de muiscursor naar het gedeelte Eigenschappen. Wijzig de waarde van de eigenschap Multiline in True.
Als alternatief kunt u de eigenschap Multiline in uw code als volgt op true instellen:
GuruWelcome.Multiline = Waar
Voeg de volgende code toe:
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
Bij uitvoering worden de twee regels tekst gescheiden.
Verklaring van de code:
- Een klasse maken met de naam Form1
- Een subroutine maken met de naam Form1_Load ()
- De eigenschap Multiline instellen op True. Het tekstvak kan meer dan één regel bevatten.
- De eerste regel tekst aan het tekstvak toevoegen.
- De tweede regel tekst aan het tekstvak toevoegen. De eigenschap Controlchars.NewLine helpt ons de twee regels te splitsen.
- Beëindiging van de subroutine.
- De klas beëindigen.
Geheel getalwaarden ophalen
VB.net behandelt alles als een string. Dit betekent dat u een geheel getal uit het tekstvak leest als een tekenreeks, en deze vervolgens omzet in een geheel getal. Dit wordt normaal gesproken gedaan met de methode Integer.Parse () .
Om dit te demonstreren, maakt u een nieuw tekstvakbesturingselement plus een knop. Geef het tekstvak de naam leeftijd. Geef de knop de naam Button1. Je zou de volgende interface moeten hebben:
Voeg de volgende code toe:
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.ClickDim x As Integerx = Integer.Parse(age.Text)MessageBox.Show(x)
Voer de code uit en voer uw leeftijd in het tekstvak in. Klik op de knop Leeftijd weergeven. Je zou het volgende moeten zien:
De waarde die u invoert, wordt geretourneerd in een MessageBox.
Verklaring van de code:
- Een klasse maken met de naam Form1.
- Een subprocedure maken met de naam Button1_Click. Het wordt gebeld wanneer op de knop wordt geklikt.
- Een integervariabele met de naam x definiëren.
- Het omzetten van de gelezen waarde uit het tekstvak met de naam leeftijd in een geheel getal.
- De waarde weergeven die in de bovenstaande stap is geconverteerd in een MessageBox.
- Beëindiging van de subprocedure.
- De klas beëindigen.
ReadOnly TextBox
U kunt een tekstvak alleen-lezen maken. Dit betekent dat de gebruiker de waarde die in het tekstvak wordt weergegeven, niet kan wijzigen. Hiervoor stelt u de eigenschap ReadOnly in op True. Om dit te demonstreren, maakt u een nieuw tekstvak aan en geeft u dit de naam guru99. Voeg de volgende code toe:
Private Sub guru99_TextChanged(sender As Object, e As EventArgs) Handles guru99.TextChangedguru99.Text = "welcome to Guru99"guru99.ReadOnly = TrueEnd Sub
De code zou het volgende moeten retourneren:
Hier is de code:
Verklaring van de code:
- Een klasse maken met de naam Form1.
- Een subroutine maken met de naam guru99_TextChanged.
- Tekst toevoegen aan het tekstvak met de naam guru99.
- De eigenschap ReadOnly van het tekstvak instellen op True. Hierdoor kan de tekst op het tekstvak niet worden gewijzigd.
- Beëindiging van de subprocedure.
- De klas beëindigen.
maximale lengte
De eigenschap MaxLength kan u helpen bij het instellen van het maximale aantal woorden of tekens dat het tekstvak toestaat. Om dit te demonstreren, maakt u een TextBox-besturingselement en geeft u dit de naam fullName. Voeg de volgende code toe:
Private Sub fullName_TextChanged(sender As Object, e As EventArgs) Handles fullName.TextChangedfullName.MaxLength = 8End Sub
Voer de code uit en probeer uw volledige naam te typen. U kunt niet meer dan 8 tekens typen, inclusief witruimte:
De code:
Code Verklaring:
- Een klasse maken met de naam Form1.
- Een subprocedure maken met de naam fullName_TextChanged.
- Zorg ervoor dat het tekstvak fullName maximaal 8 tekens accepteert.
- Beëindiging van de subprocedure.
- De klas beëindigen.
Overzicht:
- Met het TextBox-besturingselement kunt u tijdens runtime tekst in uw formulier invoeren. Het is goed om input van gebruikers te krijgen.
- De standaardinstelling is dat de TextBox Control slechts één regel tekst accepteert. U kunt dit echter wijzigen.
- U kunt verbergen wat de gebruiker in de TextBox typt, vooral wanneer u wachtwoorden moet vastleggen.
- U kunt ook het maximale aantal tekens instellen dat u in de TextBox moet invoeren.
- U kunt uw TextBox niet-bewerkbaar maken, wat betekent dat de gebruikers de tekst die erop wordt weergegeven niet kunnen wijzigen.