border

Miembros:
Mensajes:
Temas:
Online:

Ultimo Miembro:

 
 

  #1 (permalink)  
Antiguo 04-12-2007, 02:00:36
Junior Member
Site Admin
 
Registrado: nov 2007
Posts: 3
alexls Valoración +2
Predeterminado texbox multilinea

Buenas a todos,

¿Como hago para que al pulsar Intro en un textbox multilinea me salte de renglón?
Responder Con Cita
  #2 (permalink)  
Antiguo 04-12-2007, 09:23:36
Avatar de J.M.Movilla
Administrator
 
Registrado: dic 2002
Ubicación: BURGOS - ESPAÑA
Posts: 5.404
J.M.Movilla Valoración +2
Predeterminado

En Visual hay que pulsar [Ctrl] + [Enter]. En VBA no lo hice nunca...
__________________
José María Movilla Cuadrado
______________________

Visual Basic Videos Programacion Foro Programacion
Tutoriales Programacion Trucos Programacion Codigos Programacion
Responder Con Cita
  #3 (permalink)  
Antiguo 04-12-2007, 21:31:55
Gran Participación en el Foro
 
Registrado: ene 2007
Posts: 140
IvanArt Valoración +2
Predeterminado

hola chicos,

para el caso de VBA hay varias posibilidades (a añadir a la apuntada por J. Maria).

pej. que yo haya visto:

a) si quieres que te inserte el salto solo con [enter], pon la propiedad 'EnterKeyBehavoir' a True

:smt017 vuelto a editar ... y ya van tres...

pido disculpas por no haber leido bien la consulta (" ... al pulsar intro ..."). Creo que con la solucion aportada por J. Maria, mas el punto 'a' de este post ya esta la respuesta. Lo que viene a continuacion sobraba, pero ya que esta ahi lo dejo por si le es util a alguien. Disculpas de nuevo

fin edicin

b) si quieres que 'salte la linea' automaticamente al llegar al ancho del textbox, asegurate de que la propiedad 'WordWrap' esta a true (esto no es incompatible con la anterior y viseversa), aunque si llegas en medio de una cadena te la pasa entera a la siguiente linea.


c) si te refieres a que inserte un salto de linea al llegar a un nº de caracteres por linea podrias usar algo parecido a esto (seguro que muy simplificable pero que parece funcionar)

editado => OJO

tras mirarlo mas despacio el procedimiento requeriria controlar bastantes factores para evitar disgustos (pej: si se cambia el punto de inserccion al centro de una linea y se escribe algo, si se pulsa la tecla sin levantarla, y unas cuantas mas que me vienen a la cabeza). Una posibilidad es, combinandola con algun condicional mas, cambiar el codigo a otro evento <habria que probar>.

Pero bueno, creo que al menos sirve para ver por donde investigar.

fin edicion


Código:
Private Sub TextBox1_KeyUp(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer)
  Dim nroChr As Byte
  nroChr = 6
  With TextBox1
    If Len(.Text) < nroChr Then Exit Sub
    Select Case KeyCode
    Case vbKeyReturn, vbKeyTab, vbKeyBack, vbKeyLeft, vbKeyRight, vbKeyUp, _
      vbKeyDown, vbKeyClear, vbKeyDelete, vbKeyEscape
    Case Else
      If Len(.Text) = nroChr Then
        .Text = .Text & vbCr
      ElseIf (Len(.Text) - (2 * (.LineCount - 1))) Mod nroChr = 0 Then
        .Text = .Text & vbCr
      End If
    End Select
  End With
End Sub
NOTA: seguramente te convendria prevenir alguna tecla mas en el 1er case del select case

editado


OJO:
en la variable nroChr deberias poner el nº de caracteres a los que quieres que salte la linea

aunque te saltara la linea cuando tengas visualmente el nº de caracteres indicado (incluidos espacios) en realidad el largo del texto (len) sera mayor, pues si no me equivoco incluira el caracter de avance de linea y retorno de carro. Lo aviso sobre todo por las sorpresas (yo lo acabo de descubrir)


fin edicion

bueno, solo por añadir mas opciones. Espero que ayude

un saludo
Ivan
__________________
Nadie ve el mismo horizonte desde el mismo sitio.
Responder Con Cita
Respuesta


Herramientas
Desplegado

Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Trackbacks are habilitado
Pingbacks are habilitado
Refbacks are habilitado


Temas Similares
Tema Autor Foro Respuestas Último Mensaje
PageHeader MULTILINEA kazuya ComponentONE Suite 1 02-04-2006 21:47:14
Multilinea en vsflexgrid zapanjomur ComponentONE Suite 3 25-06-2005 17:44:07
TextBox Multilinea Insomnia17 VBA (Excel, Word, Outlook, Access) 2 03-01-2005 16:35:32
tooltiptext de un label (multilinea) nonnato Visual Basic 6.00 7 01-10-2004 15:39:46
Imprimir multilinea xsara1_9 Visual Basic 6.00 1 17-09-2004 01:00:00


La franja horaria es GMT. Ahora son las 15:55:57.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO 3.1.0
A vBSkinworks Design

Alojado en el servicio Premium de Masquewebs | Diseño mejorado por MasqueWebs

right