四联光电智能照明论坛

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 1734|回复: 0
打印 上一主题 下一主题

C#监视剪贴板(ClipBoard)的实现

[复制链接]
  • TA的每日心情
    开心
    2018-12-28 16:25
  • 817

    主题

    1556

    帖子

    1万

    积分

    管理员

    Rank: 9Rank: 9Rank: 9

    积分
    14941
    跳转到指定楼层
    楼主
    发表于 2016-10-31 10:12:46 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
    一、声明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);
                }
            }
    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    QQ|Archiver|手机版|小黑屋|Silian Lighting+ ( 蜀ICP备14004521号-1 )

    GMT+8, 2024-5-5 13:57 , Processed in 1.109375 second(s), 23 queries .

    Powered by Discuz! X3.2

    © 2001-2013 Comsenz Inc.

    快速回复 返回顶部 返回列表