Hét vraag- en antwoordplatform van Nederland

Visual Basic; een textbox automatisch (at runtime) laten verplaatsen ten opzichte van variabele content van een andere textbox, hoe doe ik dit?

Ik heb wel eens wat gespeeld met vb, maar ben verre van een programmeur, desondanks denk ik dat ik in de volgende situatie wat vb nodig heb.

Op mijn werk (televisie) gebruiken we software om namen te maken en in beeld te zetten tijdens een uitzending. De template hiervoor word in een 'scene' gemaakt; op 1 regelhoogte een tekstveld met naam & achternaam en op dezelfde hoogte een tekstveld met functieomschrijving.
Naam en functieomschrijving moeten (automatisch) in alle gevallen op gelijke afstand van elkaar blijven. Helaas gaat dit niet tenzij je allerlei extra handelingen verricht en zal igv een lange naam, deze over de functieomschrijving heen gaan.

Laat ik aan zo'n 'scene' nou een vb scriptje kunnen hangen die dit volgens mij kan opvangen!

Ik heb al wat zitten proberen met Labels, Textboxen en richtekstboxen in Visual Basic zelf, maar kom niet heel ver, maar volgens mij is de logica in vb om mijn doel te bereiken het zelfde als in de software op mijn werk.

Wat ik wil:
-1 Textbox waarin (een vastgestelde) hoeveelheid text in kan, die in de breedte mee sized naargelang de hoeveelheid tekst wordt ingevoerd.
-Een 2e tekstbox die altijd op gelijke afstand tov textbox1 meeverplaatst, kijkend naar de breedte van textbox1.

Verwijderde gebruiker
12 jaar geleden
Geef jouw antwoord
0 / 2500
Geef Antwoord

Antwoorden (1)

De invoer kun je beperken via de MaxLength-eigenschap;

http://msdn.microsoft.com/en-us/library/system.windows.forms.textboxbase.maxlength%28v=vs.100%29.aspx

Dat zal het beste werken voor lettertypes met een vaste breedte. Resizen is net zo makkelijk, eigenschap Autosize op true zetten:

http://msdn.microsoft.com/en-us/library/system.windows.forms.textboxbase.autosize%28v=vs.100%29.aspx

Als dat niet voldoende is, zul je de resizing-events moeten aanpassen, en de breedte van de gewenste tekst moeten opvragen via een Graphics-object. In dat geval gebruik je de MeasureString methode om de PreferredSize voor de tekstbox te berekenen:

http://msdn.microsoft.com/en-us/library/system.drawing.graphics.measurestring.aspx
Bronnen:
Verwijderde gebruiker
12 jaar geleden
Deel jouw antwoord
0 / 2500
Geef Antwoord
logo van Kompas Publishing

GoeieVraag.nl is onderdeel van Kompas Publishing