Application active

ypelissier Messages postés 23 Date d'inscription vendredi 16 mars 2012 Statut Membre Dernière intervention 16 mai 2013 - 30 juil. 2002 à 21:01
ypelissier Messages postés 23 Date d'inscription vendredi 16 mars 2012 Statut Membre Dernière intervention 16 mai 2013 - 21 août 2002 à 11:31
Bonjour,
J'aimerai pouvoir connaitre l'application qui à le focus dans windows ?

Merci

Yann

2 réponses

cs_Charlie Messages postés 110 Date d'inscription jeudi 9 mai 2002 Statut Membre Dernière intervention 11 mars 2010 1
30 juil. 2002 à 22:58
Y'a un API de window qui fait ca.... voici la description... Mais il reste qu'il ne te retourne que le Handle!!!

Declare Function GetActiveWindow Lib "user32" Alias "GetActiveWindow" () As Long

The GetActiveWindow function retrieves the window handle to the active window associated with the thread that calls the function.

If the function succeeds, the return value is the handle to the active window associated with the thread that calls the function. If the calling thread does not have an active window, the return value is NULL.

Exemple...

'This Project needs
'- two timers, interval=100
'- a button

'in general section
Private Type POINTAPI
x As Long
y As Long
End Type

Private Declare Function GetActiveWindow Lib "user32" () As Long
Private Declare Function GetWindowDC Lib "user32" (ByVal hwnd As Long) As Long
Private Declare Function Ellipse Lib "gdi32" (ByVal hdc As Long, ByVal X1 As Long, ByVal Y1 As Long, ByVal X2 As Long, ByVal Y2 As Long) As Long

Private Declare Function TextOut Lib "gdi32" Alias "TextOutA" (ByVal hdc As Long, ByVal x As Long, ByVal y As Long, ByVal lpString As String, ByVal nCount As Long) As Long
Private Declare Function GetCursorPos Lib "user32" (lpPoint As POINTAPI) As Long
Private Sub Form_Load()
Timer1.Interval = 100
Timer1.Enabled = True
Timer2.Interval = 100
Timer2.Enabled = True
Command1.Caption = "Draw Text"
End Sub
'This will draw an Ellipse on the active window
Sub Timer1_Timer()
Dim Position As POINTAPI
'Get the cursor position
GetCursorPos Position
'Draw the Ellipse on the Screen's DC
Ellipse GetWindowDC(0), Position.x - 5, Position.y - 5, Position.x + 5, Position.y + 5
End Sub
Sub Command1_Click()
'KPD-Team 1998
'URL: http://www.allapi.net/
'E-Mail: KPDTeam@Allapi.net

Dim intCount As Integer, strString As String
strString = "Cool, text on screen !"
For intCount = 0 To 30
'Draw the text on the screen
TextOut GetWindowDC(0), intCount * 20, intCount * 20, strString, Len(strString)
Next intCount
End Sub
Private Sub Timer2_Timer()
'Draw the text to the active window
TextOut GetWindowDC(GetActiveWindow), 50, 50, "This is a form", 14
End Sub
0
ypelissier Messages postés 23 Date d'inscription vendredi 16 mars 2012 Statut Membre Dernière intervention 16 mai 2013
21 août 2002 à 11:31
Merci beaucoup...
0
Rejoignez-nous