Определить, какое окно активно в данный момент - VB

Узнай цену своей работы

Формулировка задачи:

Здравствуйте собственно вопрос по окнам, как узнать 1 какое активное окно? 2 если всё свёрнуто тогда какое будет активным? 3 если ничего не открыто тогда какое будет активным? Спасибо
сорри перенесите пжл в визуал бейсик или если останется здесь, тогда нужно на нём
как бы код есть, но в ответе цифры, как понять, что за ними стоит
null
ещё важно: при нажатии клавиш на клавиатуре куда либо текст вводится? как это узнать?

Решение задачи: «Определить, какое окно активно в данный момент»

textual
Листинг программы
Private Declare Function GetWindowText Lib "user32" Alias "GetWindowTextA" (ByVal HWND As Long, ByVal lpString As String, ByVal cch As Long) As Long
Private Declare Function GetWindowTextLength Lib "user32" Alias "GetWindowTextLengthA" (ByVal HWND As Long) As Long
Private Declare Function GetForegroundWindow Lib "user32.dll" () As Long
Private Declare Function GetClassName Lib "user32" Alias "GetClassNameA" (ByVal HWND As Long, ByVal lpClassName As String, ByVal nMaxCount As Long) As Long
 
Private Sub Form_Activate()
    Dim MyStr As String
    Dim FHWND As Long
    Dim lpClassName As String
    Dim RetVal As Long
    FHWND = GetForegroundWindow()
    MyStr = String(GetWindowTextLength(FHWND) + 1, Chr$(0))
    GetWindowText FHWND, MyStr, Len(MyStr)
    MsgBox "Имя окна -" & MyStr
    lpClassName = Space(256)
    RetVal = GetClassName(FHWND, lpClassName, 256)
    MsgBox "Classname: " + Left$(lpClassName, RetVal)
End Sub

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

5   голосов , оценка 4 из 5
Похожие ответы