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

  • 相关阅读:
    C#获取远程客户端IP
    .NET 中的对象序列化
    架构师
    如何在删除并重新安装 IIS 之后修复 IIS 映射
    Web.config里设置upload文件大小限制的属性是什么来着?在哪个Section里?
    ASP.net security
    如何优化JavaScript脚本的性能
    关于session丢失原因的分析
    浅谈对象的序列化(Serialize)
    微软软件架构师培训
  • 原文地址:https://www.cnblogs.com/Dincat/p/13473269.html
Copyright © 2011-2022 走看看