四联光电智能照明论坛

标题: C#监视剪贴板(ClipBoard)的实现 [打印本页]

作者: admin    时间: 2016-10-31 10:12
标题: C#监视剪贴板(ClipBoard)的实现
一、声明API函数(Win7以上适用)
        [DllImport("user32.dll")]
        public static extern bool AddClipboardFormatListener(IntPtr hwnd);
        [DllImport("user32.dll")]
        public static extern bool RemoveClipboardFormatListener(IntPtr hwnd);
        private static int WM_CLIPBOARDUPDATE = 0x031D;

二、在需要启动监视(一般在窗口初始化)的时候加入
AddClipboardFormatListener(this.Handle);
结束后(一般在窗口关闭时)加入
RemoveClipboardFormatListener(this.Handle);

三、重载WndProc函数

        protected override void DefWndProc(ref Message m)
        {        
            if(m.Msg == WM_CLIPBOARDUPDATE)
            {
                textBox1.Text = Clipboard.GetText();
            }
            else
            {
                base.DefWndProc(ref m);
            }
        }




欢迎光临 四联光电智能照明论坛 (http://5xhome.com/) Powered by Discuz! X3.2