zoukankan      html  css  js  c++  java
  • 找到并最小化或最大化或恢复一个窗口

    介绍 GetWindowPlacement、SetWindowPlacement和FindWindow:使用这些API函数,我们可以最小化、最大化或恢复窗口。 使用的函数 GetWindowPlacement函数检索指定窗口的显示状态以及已恢复的、最小化的和最大化的位置。 隐藏,复制CodeGetWindowPlacement (ByVal hwnd为整数,ByRef lpwndpl为WINDOWPLACEMENT)为整数 SetWindowPlacement函数设置指定窗口的显示状态以及已恢复的、最小化的和最大化的位置。 隐藏,复制CodeSetWindowPlacement (ByVal hwnd为整数,ByRef lpwndpl为WINDOWPLACEMENT)为整数 函数检索顶级窗口的句柄,该顶级窗口的类名和窗口名与指定的字符串匹配。此函数不搜索子窗口。此函数不执行区分大小写的搜索。 隐藏,复制CodeFindWindow(字符串lpClassName,字符串lpWindowName) 使用 隐藏,收缩,复制Code

    Public Class Minimize
    
        Private Declare Function FindWindow Lib "user32" Alias _
                "FindWindowA" (ByVal lpClassName As String, _
                ByVal lpWindowName As String) As Integer
        Private Declare Function GetWindowPlacement Lib _
                "user32" (ByVal hwnd As Integer, _
                ByRef lpwndpl As WINDOWPLACEMENT) As Integer
        Private Declare Function SetWindowPlacement Lib "user32" _
               (ByVal hwnd As Integer, ByRef lpwndpl As WINDOWPLACEMENT) As Integer
        Private Const SW_SHOWMINIMIZED As Short = 2
        Private Const SW_SHOWMAXIMIZED As Short = 3
        Private Const SW_SHOWNORMAL As Short = 1
    
        Private Structure POINTAPI
            Dim X As Integer
            Dim Y As Integer
        End Structure
    
        Private Structure RECT
            Dim Left_Renamed As Integer
            Dim Top_Renamed As Integer
            Dim Right_Renamed As Integer
            Dim Bottom_Renamed As Integer
        End Structure
    
        Private Structure WINDOWPLACEMENT
            Dim length As Integer
            Dim flags As Integer
            Dim showCmd As Integer
            Dim ptMinPosition As POINTAPI
            Dim ptMaxPosition As POINTAPI
            Dim rcNormalPosition As RECT
        End Structure
    
       
        Public Sub windowAction(ByVal classname As String, ByVal action As String)
    
            Dim app_hwnd As Integer
            Dim wp As WINDOWPLACEMENT
            app_hwnd = FindWindow(classname, vbNullString)
            wp.length = Len(wp)
            GetWindowPlacement(app_hwnd, wp)
    
            Select Case action
    
                Case "Minimize"
                     wp.showCmd = SW_SHOWMINIMIZED
                Case "Maximize"
    
                     wp.showCmd = SW_SHOWMAXIMIZED
    
                Case "Restore"
                    wp.showCmd = SW_SHOWNORMAL
            End Select
            SetWindowPlacement(app_hwnd, wp)
    
        End Sub
    End Class
    'Use this Class
    'This is sample for Minimize the notepad window
    
    Private Sub Button1_Click(ByVal sender As System.Object, _
            ByVal e As System.EventArgs) Handles Button1.Click
        Dim test As New Minimize
        test.windowAction("Notepad", "Minimize")
    End Sub

    本文转载于:http://www.diyabc.com/frontweb/news10852.html

  • 相关阅读:
    天乙社区后台管理分析(一)
    [Android Webkit]JNI基础及Java层与C++层的交互
    1033
    pat 1049. Counting Ones (30)
    juce: 跨平台的C++用户界面库
    高性能MySql进化论(一):数据类型的优化_上
    url参数中有+、空格、=、%、&、#等特殊符号的处理
    带环单链表的问题
    在SQL Server 中启用 FileStream
    (2)入门指南——(2)jQuery可以做什么(What jQuery does)
  • 原文地址:https://www.cnblogs.com/Dincat/p/13473269.html
Copyright © 2011-2022 走看看