Título: textbox keypress (shift) Publicado por: Wdeah en 10 Septiembre 2006, 20:28 pm hola, estoy haciendo una especie de chat, en donde tengo un textbox, y un boton (para enviar)
el textbox quiero que sea multilinea, pero que al presionar ENTER, se envie lo que esta escrito.. y que para pasar a la linea de abajo, haya que apretar el shift, seguido del enter (exactamente igual que el msn) el codigo que tengo es este Código: Private Sub txtText_KeyPress(KeyAscii As Integer) bien, lo que hace eso es evaluar cual tecla es presionada, si la tecla es el enter, envia la info.. ahora, como puedo hacer para saber, si al apretar la tecla enter, se esta presionando la tecla shift? gracias :) Título: Re: textbox keypress (shift) Publicado por: elmaro en 10 Septiembre 2006, 21:39 pm cual es el valor aascii de la tecla shift???
el valor es 16 xD bueno podrias hacer asi: Código: Private Declare Function GetKeyState Lib "user32" (ByVal nVirtKey As Long) As Integer enecesitas un timer,. el cual tiene un interval de 1 o 10, verifica los resultados Título: Re: textbox keypress (shift) Publicado por: ReViJa en 10 Septiembre 2006, 21:51 pm Prueba esto y nos cuentas..
Código: Private Sub Text1_KeyUp(KeyCode As Integer, Shift As Integer) Título: Re: textbox keypress (shift) Publicado por: Wdeah en 10 Septiembre 2006, 22:10 pm gracias elmaro, pero como la aplicacion no es solamente una ventana de chat, hay otras opciones y no quiero cumplicarme con timers y esas cosas, es que soy medio novato en esto..
Prueba esto y nos cuentas.. Código: Private Sub Text1_KeyUp(KeyCode As Integer, Shift As Integer) parece interesante, pero no entendi nada ;D Título: Re: textbox keypress (shift) Publicado por: elmaro en 10 Septiembre 2006, 22:17 pm shift representa las teclas "Shift", "Control", "Alt" y "Alt Gr"(el orto alt:P)
KeyCode representa la tecla presionada, y segun que teclas que entran en shift presiones mas la tecla markada en keycode[enter(13)] en la ventana Inmediate te va a mostrar que tecla precionaste junto al enter Título: Re: textbox keypress (shift) Publicado por: Wdeah en 10 Septiembre 2006, 22:23 pm claro, pero mi pregunta es: como adapto eso a lo que necesito :rolleyes:
Título: Re: textbox keypress (shift) Publicado por: elmaro en 10 Septiembre 2006, 22:47 pm podrias poner asi:
Código: Private Sub Text1_KeyUp(KeyCode As Integer, Shift As Integer) debes remplazar todo lo que dice Text1 por el nombre de tu textbox ovbiamente Título: Re: textbox keypress (shift) Publicado por: Wdeah en 10 Septiembre 2006, 23:19 pm buenisimo, muchas gracias.
ya que estamos queria preguntar otra cosa.. hay alguna manera de ocultar un componente, por ejemplo tengo un picturebox arriba de otro, pero necesito trabajar sobre el que esta abajo, tengo que correrlo si o si? quizas hay alguna opcion de hide seleccion o algo asi.. gracias Título: Re: textbox keypress (shift) Publicado por: soplo en 10 Septiembre 2006, 23:43 pm En mi opinión es mas fácil que en vez de usar la tecla shift uses la tecla ctrl porque control + enter se corresponde al código ascii CR (esto es el código ascii 10).
Y como tal no tienes ni que programarlo puesto que cuando lo imprimes en pantalla salta de línea. Un saludo Título: Re: textbox keypress (shift) Publicado por: Wdeah en 10 Septiembre 2006, 23:49 pm es verdad, no lo sabia.. que buen dato. bueno, siempre pense que mientras menos codigo mejor :P
que se aprete el control entonces! ;D Título: Re: textbox keypress (shift) Publicado por: elmaro en 11 Septiembre 2006, 00:00 am jajajaja
nos conocia eso del codigo Ascii CR(10) gracias x el dato Título: Re: textbox keypress (shift) Publicado por: ReViJa en 11 Septiembre 2006, 02:05 am Si con lo que te he puesto no te aclaras :-X :-X :-X
Solo era para que vieses el valor que toma Shift con algunas combinaciones. Título: Re: textbox keypress (shift) Publicado por: Hans el Topo en 11 Septiembre 2006, 02:15 am Citar KeyDown, KeyUp (Eventos) Shift Un entero que corresponde al estado de las teclas MAYÚS, CTRL y ALT en el momento del evento. El argumento mayús es un campo de bit con los bits menos significativos correspondientes a la tecla MAYÚS (bit 0), CTRL (bit 1) y ALT (bit 2 ). Estos bits corresponden a los valores 1, 2 y 4, respectivamente. Algunos, todos o ninguno de estos bits pueden estar establecidos, lo que indica que alguna, todas o ninguna de las teclas están presionadas. Por ejemplo, si están presionadas las teclas CTRL y ALT, el valor de mayús es 6. y xk no usas las constantes k ya existen? Constante Valor Descripción vbShiftMask 1 Máscara de bits de la tecla MAYÚS. VbCtrlMask 2 Máscara de bits de la tecla CTRL. VbAltMask 4 Máscara de bits de la tecla ALT. una pregunta el F2(examinador de objetos) solo lo tienen los de la msdn? o viene por defecto con vb6? Título: Re: textbox keypress (shift) Publicado por: ReViJa en 11 Septiembre 2006, 02:19 am Es lo mismo pero de otra manera.
Código: Private Sub Text1_KeyUp(KeyCode As Integer, Shift As Integer) Creo que vienen con VB6. |