Hola, quería saber como hacer para que un botón de VB6 reaccione al pulsar ENTER en vez de clicar. ¿Se podría hacer? Espero respuestas.
Hola,escribi en otro color de letra :P,podes hacer algo asi:
Private Sub Command1_Click()
MsgBox "hola"
End Sub
Private Sub Form_KeyPress(KeyAscii As Integer)
If KeyAscii = 13 Then Call Command1_Click
End Sub
saludos.
Si, yame va. Ahora otra duda, ¿cómo hago para hacer un sendkeys Ctrl + C por ejemplo? Es decir, en vez de
SendKeys "Hola"
Hacer el mismo sendkeys pero en vez de "Hola" pues que pulse Ctrl + C
SendKeys "^(C)"
No va. El problema es que selecciono text1.text lo le doi al botón que tiene ese code y luego lo que copió fue "SendKeys "^(C)""
Control + C es para copiar al portapapeles... en ese sentido:
Selecciona el texto a copiar (por ejemplo) y luego presionas el botón donde le colocaste el sendkeys y ¡listo! se copio... no tiene más misterios... acá me funciona o ¿no es eso lo que querías hacer?
Haber, yo le pongo ese code al botón y despues F5 y le doi a ese botón donde puse el comando una vez seleccionado el texto a copiar, y no me lo copia. :S
seba... eso no se si anda bien, no hay que habilitar el KeyPreview del form antes???
o lo toma igual?
El problema es que al hacer click en el boton estas quitando el foco del textbox
Es deducible, si pierde el foco ¡dáselo! ;)
Option Explicit
Private Sub CmdCopiar_Click()
Text1.SetFocus
SendKeys "^(C)"
End Sub
Private Sub CmdPegar_Click()
Text1.SetFocus
SendKeys "^(V)"
End Sub
A mi me funcioooooonaaaaaaaa, tengo partes del cerebro inflamado (dolor de cabeza) :xD ¡saludos!
Ahora me ha surgido otra duda. Perdonar si molesto:
¿Cómo hago para poner una imagen como botón? Es decir, un PictureBox solo que el problema es que si la imagen ocupa 10 cm y el PictureBox 11 cm me queda 1 cm en gris y no me gusta. ¿Hay alguna otra forma?
enverde un picture box coje un image k lo tienes un poco mas abajo pones la imagen y en lo de alado k son las opciones de lo k kieras pone borderStyle le apretas esta en none lo canvias por fixed single y asunto arreglado :P ya lo tendras arreglado suerte :P
Ya está. Muchas gracias a todos. Me habeis servido de mucho. ;)
Cita de: skullpseba... eso no se si anda bien, no hay que habilitar el KeyPreview del form antes???
o lo toma igual?
me mande cualquiera :P,no es en el evento keypress del formulario es en el del boton...
Private Sub Command1_Click()
MsgBox "hola"
End Sub
Private Sub Command1_KeyPress(KeyAscii As Integer)
If KeyAscii = 13 Then Call Command1_Click
End Sub
asi anda,pero no se si notaron que cuando uno aprieta la tecla espaciadora arriba de un boton se aprieta el boton y se genera el evento click del boton :P,hay qeu cancelar esa pulsacion :P
saludos.
Ni me había fijado. :)
Cita de: Ultra-Xandre en 11 Mayo 2008, 08:26 AM
Ni me había fijado. :)
emmm, flaco. osea... te dijeron 10000 veces qeu no pongas ese codigo porque no se ve nada!, dale que colaboras un poco, con la gente qeu te ayuda...
Ya ya, es que no me di cuenta tío...
todos los botones disparan el evento click al presionar enter sobr ellos, no se que quieren inventar.
¿Al presionar ENTER sobre ellos? No, accionan con el evento click al clicar, no al hacer ENTER
si colega.... vamos... joder....
al presionar enter sobre un boton se dispara _click() solo que no hace la animacion de "boton pulsado" como si usaras la barra espaciadora, pero ambos (la barra y el enter, tambien el intro que para informaciond e algunos, no es la misma tecla) disparan boton_click()
¿Seguro? ¿Neo?
o mis botones son magicos :xD (sarcasmo), o estoy 100% seguro de lo que digo.
He estado probando y pues ahora ya sé porque te va al darle ENTER, es porque lo tienes seleccionado, es decir, al rededor del botón tienes unos cuantos puntitos. ¿Verdad? Si, estoy seguro :)
empeze a leer esta conversacion y me rei toda la mañana :P,lo que dice SERBice es verdad se dispara el evento click del boton,pero a lo que yo me refiero es a lo siguiente,tratar de diferenciar el evento click del evento del enter,no quiero que al apretar el enter me llama al evento click quiero que se diferencie....que cada evento haga cosas distintas o avise con un simple msgbox que se produjo en evento click y en el otro el evento keypress o keydown ....
saludos.
Hola, tengo una nueva duda y aprovecho este tema abierto.
Bien, os cuento, lo que quiero hacer es hacer un Shell ("CMD.exe") lo que pasa es que al darle clic al botón se abre CMD pero el form sigue por encima del CMD y despues hago un sendkeys entonces el SendKeys afecta al form, no al CMD.
Otra cosa es que quiero el code para hacer sendkeys que envíe las teclas de lo que hay dentro del text1.text. Probé con SendKeys "(Text1.text)" y nada. ¿Cómo hago?
ve a la pagina de elguille (www.elguille.info) y busca su articulo doned habla como capturar la salida de un prorgama DOS. lo hace abriendo el proceso como un thread hijo, es muy bueno, te servira para loq eu queires.
en est momento no recuerdo el nombre del artitulo, pero buscalo por "createpipe" que es ua parte del codigo, de seguro te saldra.
o.O No encontré nada. Si alguien puede explicarme... me corre prisa lo de enviar text1.text
Con respecto a lo del cmd si lo que queres es leer y escribir en el porque no miras el post que deje que tiene una clase para hacer eso.
http://foro.elhacker.net/programacion_vb/jugaba_a_que_hacia_un_troyano_source-t211260.0.html
Jajaja, si te refieres a hacer el SendKeys en el cmd pero el form se encuentra sobre él, entonces, utiliza una Api para poder establecer el focus en el CMD, o trata con un evento Timer en el lapso de tiempo cambias de ventana (jajaja) y listo, lo anterior tambien se conoce como PIPEs, usa el buscador....
PD: Con anterior me refiero a interactuar con el CMD sin necesesidad del SendKeys...
Saludos!!!!
busqueda:
http://www.google.com.ar/search?hl=es&q=Redirigir+la+salida+de+un+programa+al+nuestro+de+VB&btnG=Buscar&meta=
resultado1: http://www.mundoprogramacion.com/vb/ejemplos/vb_stdout.htm
derivado del resultado 2:
http://www.elguille.info/vb/ejemplos/vb_stdout.htm
este ultimo es el que te mensionaba....
y por favor, al menos antes de decir No encontré nada di "no he buscado" :xD..... o disimula un poco y deja pasar mas tiempo luego de mi respuesta :¬¬
en fin, no desvirtuemos el thread... volviendo a lo del boton, con keypress se peude hacer, recuerden qeu intro y enter no son la misma tecla y que deben "borrar la pulsacion" para que no dispare a click, en keypress funcionaria colocando el codigod e la tecla pulsada en 0, lo mismo si se hiciera e keydown, lo que seria mejor para asegurarse de que de verdad no dispararà a _click().
Ok. Ahora me falta lo de SendKeys y enviar el text1.text
Cita de: Ultra-Xandre en 12 Mayo 2008, 22:44 PM
Probé con SendKeys "(Text1.text)" y nada. ¿Cómo hago?
NO lo coloques entre comillas dobles.
SendKeys Text1.Text
y... si no tiene foco ¡dáselo!
Shell ("cmd.exe"), vbNormalFocus
Para que sepas, haciendo una fusión de api's "FindWindow + ShowWindow" se puede obtener una buena rutina que le de el foco cuando lo desees...
o.O Si, me van cualquiera de los dos. Muchísimas gracias cΔssiΔnі me ha servido de mucho. Gracias tío.