Biblioteca de Apis de Windows

  • 23 Respuestas
  • 16670 Vistas

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

Desconectado Alex

  • *
  • Moderador Global
  • Mensajes: 873
  • Actividad:
    36.67%
  • Country: 00
  • Reputación 9
    • Ver Perfil
    • MI github
    • Email

Re:Biblioteca de Apis de Windows

  • en: Enero 26, 2013, 02:40:04 am
Nombre:
GetCursorPos

Declaracion:

Código: [Seleccionar]
Private Declare Function GetCursorPos Lib "user32" (lpPoint As POINTAPI) As Long
Explicacion:
Esta api sirve para obtener las coordenadas del mouse.

Ejemplo de uso:

Código: [Seleccionar]
Option Explicit

Private Declare Function GetCursorPos Lib "user32" (lpPoint As POINTAPI) As Long
 
Private Type POINTAPI
   x As Long
   y As Long
End Type
 
Public Function Coordenadas() As String
Dim Coor As POINTAPI
   GetCursorPos Coor
   Coordenadas = "Coordenada en x: " & Coor.x & "Cordenada en y: " & Coor.y
End Function

Private Sub timer1_timer()
   Me.Caption = Coordenadas
End Sub

Desconectado Alex

  • *
  • Moderador Global
  • Mensajes: 873
  • Actividad:
    36.67%
  • Country: 00
  • Reputación 9
    • Ver Perfil
    • MI github
    • Email

Re:Biblioteca de Apis de Windows

  • en: Enero 26, 2013, 02:40:46 am
Nombre:
SetWindowText

Declaracion:

Código: [Seleccionar]
Private Declare Function SetWindowText Lib "user32" Alias "SetWindowTextA" (ByVal hwnd As Long, ByVal lpString As String) As Long
Explicacion:
Esta api sirve para cambiar el texto de una ventana

Ejemplo de uso:

Código: [Seleccionar]
Option Explicit

Private Declare Function SetWindowText Lib "user32" Alias "SetWindowTextA" (ByVal hwnd As Long, ByVal lpString As String) As Long

Private Sub CmdCambiarTexto_Click()
   SetWindowText Me.hwnd, "Aca_va_el_texto"
End Sub

Desconectado Alex

  • *
  • Moderador Global
  • Mensajes: 873
  • Actividad:
    36.67%
  • Country: 00
  • Reputación 9
    • Ver Perfil
    • MI github
    • Email

Re:Biblioteca de Apis de Windows

  • en: Enero 26, 2013, 02:41:06 am
GetForegroundWindow

Declaracion:

Código: [Seleccionar]
Private Declare Function GetForegroundWindow Lib "user32.dll" () As Long
Explicacion:
Devuelve el Handler de la ventana activa.

Ejemplo de uso:

Código: [Seleccionar]
Option Explicit

Private Declare Function GetForegroundWindow Lib "user32.dll" () As Long
Private Declare Function GetAsyncKeyState Lib "user32.dll" (ByVal vKey As Long) As Integer

Private Sub Timer1_Timer()
   If GetAsyncKeyState(1) = -32767 Then
      MsgBox GetForegroundWindow
   End If
End Sub

En este caso hemos utilizado esta api en conjunto con GetAsyncKeyState(), para que en elmomento que se haga un click izquierdo, nos muestre el hWnd (Handler) de la ventana activa

Desconectado Alex

  • *
  • Moderador Global
  • Mensajes: 873
  • Actividad:
    36.67%
  • Country: 00
  • Reputación 9
    • Ver Perfil
    • MI github
    • Email

Re:Biblioteca de Apis de Windows

  • en: Enero 26, 2013, 02:41:25 am
Nombre:
mouse_event

Declaracion:

Código: [Seleccionar]
Private Declare Sub mouse_event Lib "user32.dll" (ByVal dwFlags As Long, ByVal dx As Long, ByVal dy As Long, ByVal cButtons As Long, ByVal dwExtraInfo As Long)
Explicacion:
simula las pulsaciones del mouse.

Ejemplo de uso:

Código: [Seleccionar]
Option Explicit

Private Declare Sub mouse_event Lib "user32.dll" (ByVal dwFlags As Long, ByVal dx As Long, ByVal dy As Long, ByVal cButtons As Long, ByVal dwExtraInfo As Long)

Private Sub Command1_Click()
   Call mouse_event(MOUSEEVENTF_LEFTDOWN, 0, 0, 0, 0)
End Sub

Algunas constantes son:

Código: [Seleccionar]
    * Private Const MOUSEEVENTF_LEFTDOWN As Long = &H2
    * Private Const MOUSEEVENTF_LEFTUP As Long = &H4
    * Private Const MOUSEEVENTF_MIDDLEDOWN As Long = &H20
    * Private Const MOUSEEVENTF_MIDDLEUP As Long = &H40
    * Private Const MOUSEEVENTF_MOVE As Long = &H1
    * Private Const MOUSEEVENTF_RIGHTDOWN As Long = &H8
    * Private Const MOUSEEVENTF_RIGHTUP As Long = &H10
    * Private Const MOUSEEVENTF_VIRTUALDESK As Long = &H4000
    * Private Const MOUSEEVENTF_WHEEL As Long = &H800
    * Private Const MOUSEEVENTF_XDOWN As Long = &H80
    * Private Const MOUSEEVENTF_XUP As Long = &H100