[vb6] bextbox met horizontale scrollbar

Pagina: 1
Acties:

  • kippy
  • Registratie: September 2004
  • Laatst online: 21:40
Na 2 uur goed zoekken ben ik het zat en doe ik toch maar een post. hoppenlijk dat jullie hier wel een antwoord op weten.

Het gaat om het volgende.

Ik heb een textbox met een text er al van te voren in, deze text is groter dan de textbox zelf. Ik heb de horizontale en verticale scrollbar aangezet en wordwrap uit.

Ik kan nu de horizontale scrol balk wel krijgen als ik mijn progje run, maar dan zie ik em pas op het moment dat ik helemaal rechts in de textbox klick. Ik zou hem graag van te voren al zien.

Ik hoop dat jullie mijn verhool een beetje snappen. en ik had al een draadje gevonden op en forum maar dat hielp mij niet verder.

  • ZaZ
  • Registratie: Oktober 2002
  • Laatst online: 19-03 00:48

ZaZ

Tweakers abonnee

dus als je rechts hebt geklikt en weer naar 'positie 1' gaat blijft ie wel staan?
dan zou je iets kunnen proberen om in het gotfocus event te zetten ala

oude positie opslaan
zoeken naar een vbcrlf
textbox.selstart zetten op die positie
textbox.selstart zetten op oude positie

als je het ziet verspringen en dat er niet mooi uitziet kan je altijd nog een lockwindowupdate gebruiken.
beetje smerige oplossing misschien, maar 't is het eerste wat in me opkomt :)

Lekker op de bank


  • kippy
  • Registratie: September 2004
  • Laatst online: 21:40
ZaZ schreef op donderdag 17 maart 2005 @ 10:09:
dus als je rechts hebt geklikt en weer naar 'positie 1' gaat blijft ie wel staan?
dan zou je iets kunnen proberen om in het gotfocus event te zetten ala

oude positie opslaan
zoeken naar een vbcrlf
textbox.selstart zetten op die positie
textbox.selstart zetten op oude positie

als je het ziet verspringen en dat er niet mooi uitziet kan je altijd nog een lockwindowupdate gebruiken.
beetje smerige oplossing misschien, maar 't is het eerste wat in me opkomt :)
Het is een begin........

Maar als ik zeg

TextBoxResults.SelStart = 70
TextBoxResults.SelStart = 1

dan heb ik nog geen scroll balk, als ik in men window klick.

wanneer ik alleen

TextBoxResults.SelStart = 70

doe dan wel maar dan staat men text curzor op 70 wat niet helmaal de bedoeling is.
Ik vind het gewoon vreemd dat er niet altijd een horizontale scrollbalk kan zijn, zal een een microzacht bug zijn zoals in het andere draadje ook al stond. maar op de site van microsoft kan ik nix vinden.

en een getfocus kan niet niet op een textbox

TextBoxResults.Getfocus

is geen event van Textbox (dacht ook van wel maar wanneer ik dat doe feet tie een err ook al sta in op het goede form)

vind het allemaal maar wazig

  • kippy
  • Registratie: September 2004
  • Laatst online: 21:40
niemand meer een idee? (kleine schop)

  • ZaZ
  • Registratie: Oktober 2002
  • Laatst online: 19-03 00:48

ZaZ

Tweakers abonnee

.Getfocus bestaat natuurlijk niet ('t is geen property of function oid)
het is een event, en ik weet haast zeker dat een textbox die wel heeft.
maar goed... da's niet het belangrijkste.
ik heb hier een vb6 app met ook 'veel' tekst erin, en daar is de balk wel zichtbaar.
dus misschien dat een property niet goed staat?
trouwens.. een wordwrap property ben ik nog nooit tegengekomen in een vb6 textbox
ben benieuwd waar je die hebt gevonden

Lekker op de bank


  • sopsop
  • Registratie: Januari 2002
  • Laatst online: 07-05 15:06

sopsop

[v] [;,,;] [v]

Hij bedoelt waarschijnlijk de multiline-property.

En de scrollbars werken niet als multiline uitstaat. Het gemakkelijkste om te bereiken wat jij wilt is om de multiline property aan te zetten en de volgende code aan je ... event te hangen:

Visual Basic:
1
2
3
Private Sub Text1_KeyPress(KeyAscii As Integer)
   If KeyAscii = 13 Or KeyAscii = 10 Then KeyAscii = 0
End Sub

Deze code vangt het invoeren van [ENTER] en [CTRL][ENTER] af.

Eventueel zou je nog kunnen overwegen om de volgende code aan je textbox te hangen:
Visual Basic:
1
2
3
Private Sub Text1_Change()
   Text1.Text = Replace(Text1.Text, vbCrLf, "")
End Sub

Deze code zorgt ervoor dat data die niet via directe invoer in de textbox gezet wordt ook zonder [ENTER] in de textbox komt. Dus text die in de textbox geplakt wordt en text die elders in je code in die textbox wordt gezet.

[ Voor 132% gewijzigd door sopsop op 17-03-2005 13:47 ]


  • kippy
  • Registratie: September 2004
  • Laatst online: 21:40
Ik heb VB6.3 , de genen die bij microsoft office geleverd zit om je marcro's te kunnen editen.

Op het moment dat ik een "TextBox" invoeg kan ik hier voor onder andere de "Properties": "MultiLine" en "WordWrap" aanzetten.

Hierbij heb ik "MultiLine" op true staan want ik wil meerdere regels in men "TextBox" en ik heb "WordWrap" op false staan want anders wordt men regel in 2e gehakt op het moment dat de "TextBox" te klein is. Ook al staat de "Horizontalscroll" aan

  • sopsop
  • Registratie: Januari 2002
  • Laatst online: 07-05 15:06

sopsop

[v] [;,,;] [v]

Zet dan in het vervolg [VBA] in je topictitel :) dat scheelt een hoop verwarring.

En die multiline informatie die je nu geeft was wel handig geweest.

[ Voor 31% gewijzigd door sopsop op 17-03-2005 13:48 ]


  • kippy
  • Registratie: September 2004
  • Laatst online: 21:40
boppert schreef op donderdag 17 maart 2005 @ 13:34:
Hij bedoelt waarschijnlijk de multiline-property.

En de scrollbars werken niet als multiline uitstaat. Het gemakkelijkste om te bereiken wat jij wilt is om de multiline property aan te zetten en de volgende code aan je ... event te hangen:

Visual Basic:
1
2
3
Private Sub Text1_KeyPress(KeyAscii As Integer)
   If KeyAscii = 13 Or KeyAscii = 10 Then KeyAscii = 0
End Sub

Deze code vangt het invoeren van [ENTER] en [CTRL][ENTER] af.
Dat hoefd dus niet want dat werkt gewoon met "Properties" -> "EnterKeyBehavior" = true

Sorry wist niet dat dit dan een [vbA] was, ben nog niet zo lang met visual basic bezig. heb momenteel alleen geen keuze voor een andere programeertaal.

Maar snap nog steeds niet wat ik fout doe.......

[ Voor 19% gewijzigd door kippy op 17-03-2005 14:41 ]

Pagina: 1