Duda Con SetFocus o Value

Iniciado por NsTeam, 20 Julio 2009, 20:02 PM

0 Miembros y 1 Visitante están viendo este tema.

NsTeam

Hola A TOdos

Bueno Anda en un proyecto

y me tope con esta duda

bueno mi duda es la siguiente



bueno lo que quisiera es que

al presionar la tecla F1 Se Seleccione la siguiente OPcion2

y si vuelo a presionar F1 , se vuelva a elegir la siguiente opcion3

y si presiono F2 se selecciona la opcion anterior2

Bueno Espero Averme explicado Bien =)

Gracias Espero ALguna Rpta :)

BlackZeroX

#1
1.- verifica que este activa la ventana
2.- si es has un hook al teclado o bien un timer con la api "GetAsyncKeyState" para escanear la teclas pulsadas
3.- si es dicha tecla realiza el evento X

El evento 1,2 pueden ser intercambiables según se requiera... Mas dudas usa el buscador del foro. busca por el tag="Keylogger"

Dulces Lunas.
The Dark Shadow is my passion.

LeandroA

Hola si es como yo entiendo pone en tiempo de edicion en la propiedad del formulario KeyPreview = True

y despues suponiendo que tenes los OptionButton en index de 0 a 8 pondes el siguiente codigo en el formulario



Option Explicit

Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer)
    If KeyCode >= 112 And KeyCode <= 120 Then
        Option1(KeyCode - 112).Value = True
    End If
End Sub




Saludos

Karcrack

#3
@LeandroA:
Siempre descubriéndonos nuevas propiedades de los controles mas típicos ;-)
Con tus mensajes demuestras que la opción mas sencilla suele ser la mejor :xD

BlackZeroX

#4
Hay diferencias entre el metodo de @LeandroA: y el que propuse, y una de ellas es que es nesesario estar con el foco dicho Objeto y el de implementar algo como Keylogger en la misma APP solo deberia estar activa la ventana o Form actual.¡!

Dulces Lunas.


jaja confundi el proceso a activar xP

Dulces Lunas
The Dark Shadow is my passion.

NsTeam

Cita de: LeandroA en 20 Julio 2009, 21:06 PM
Hola si es como yo entiendo pone en tiempo de edicion en la propiedad del formulario KeyPreview = True

y despues suponiendo que tenes los OptionButton en index de 0 a 8 pondes el siguiente codigo en el formulario



Option Explicit

Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer)
    If KeyCode >= 112 And KeyCode <= 120 Then
        Option1(KeyCode - 112).Value = True
    End If
End Sub




Saludos

Hola Probe COn Tu Code

Bueno En Si Lo que Hice Fue pegarlo.

Pero En SI NO lo entiendo Bien

POrque al apretar F1 Me manda un error

"Wrong number  of arguments or invalid property assignment"

Bueno Talves Tendria que HAcerlo de Otra Forma U.U

Aver si Me Responder =)[/b]

LeandroA

#6
Como primer consejo te digo que veas este tutorial

http://www.recursosvisualbasic.com.ar/htm/tutoriales/tutorial-basico6.htm#arreglo-de-controles

pero si no queres trabajar con index (matriz de controles) podes hacer un select case
Código (vb) [Seleccionar]

Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer)
   Select Case KeyCode
       Case vbKeyF1 '112
           Option1.Value = True
       Case vbKeyF2 '113
           Option2.Value = True
       Case vbKeyF3 '114
           Option3.Value = True
       Case vbKeyF4 '115
           Option4.Value = True
       Case vbKeyF5 '116
           Option5.Value = True
       Case vbKeyF6 '117
           Option6.Value = True
       Case vbKeyF7 '118
           Option7.Value = True
       Case vbKeyF8 '119
           Option8.Value = True
       Case vbKeyF9 '120
           Option9.Value = True
   End Select
End Sub