[转]C# FormWindow Class 公开调用方法 12种

源地址链接:http://bbs.125.la/thread-13618432-1-1.html

 

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Linq;
using System.Text;
using System.Runtime.InteropServices;

namespace FormWindow.Cs
{
    public class FormWindow
    {
        public FormWindow FormWindow = new FormWindow();
        [DllImport("user32.dll", EntryPoint = "FindWindowA")]
        private static extern int FindWindowA(string a, string b);
        public int 标题取窗口句柄(string Text)
        {
            string[] a = new string[2];
            a[1]=Text;
            return FindWindowA(a[0],a[1]);
        }
        public int 类名取窗口句柄(string ClassName)
        {
            string[] a = new string[2];
            a[0] = ClassName;
            return FindWindowA(a[0], a[1]);
        }
        [DllImport("user32.dll", EntryPoint = "IsWindow")]
        private static extern int IsWindow(int Hwnd);
        public bool 句柄是否有效(int Hwnd)
        {
            if (IsWindow(Hwnd) > 0)
            {
                return true;
            }
            else
            {
                return false;
            }
        }
        [DllImport("user32.dll", EntryPoint = "FlashWindow")]
        private static extern int FlashWindow(int HWnd, bool IsTrue);
        public void 闪烁窗口(int 窗口句柄)
        {
            FlashWindow(窗口句柄, true);
        }
        [DllImport("user32.dll", EntryPoint = "GetActiveWindow")]
        private static extern int GetActiveWindow();
        public int 取活动窗口句柄()
        {
            return GetActiveWindow();
        }
        [DllImport("user32.dll", EntryPoint = "WindowFromPoint")]
        private static extern int WindowFromPoint(int x, int y);
        public int 坐标取窗口句柄(int x, int y)
        {
            return WindowFromPoint(x, y);
        }
        [DllImport("user32.dll", EntryPoint = "AnimateWindow")]
        private static extern int AnimateWindow(int hwnd, int dwTime, int dwFlags);
        public int 动画窗口(int 窗口句柄, int 持续时间, int 显示方式)
        {
            return AnimateWindow(窗口句柄, 持续时间, 显示方式);
        }
        [DllImport("user32.dll", EntryPoint = "MessageBoxA")]
        private static extern int MessageBoxA(int Hwnd, string Tip, string Text, int val);
        public int 信息框
        (int 窗口句柄, string 提示信息, string 信息框标题, int 按钮值)
        {
            return MessageBoxA(窗口句柄, 提示信息, 信息框标题, 按钮值);
        }
        [DllImport("user32.dll", EntryPoint = "GetDesktopWindow")]
        private static extern int GetDesktopWindow();
        public static extern int 取屏幕句柄()
        {
            return GetDesktopWindow();
        }
        [DllImport("user32.dll", EntryPoint = "IsZoomed")]
        private static extern int IsZoomed(int Hwnd);
        public bool 窗口是否最大化(int Hwnd)
        {
            if(IsZoomed (Hwnd)!=0)
            {
                return true;
            }
            else
            {
                return false;
            }

        }
        [DllImport("user32.dll", EntryPoint = "GetWindowTextA")]
        private static extern int GetWindowTextA(int Hwnd, string cch, int lp);
        public string 取窗口标题(int Hwnd)
        {
            string a = "";
            GetWindowTextA(Hwnd, a, 255);
            return a;
        }
    }
}

  

posted on 2013-05-06 09:24  冰河程序猿  阅读(439)  评论(0编辑  收藏  举报

导航