zoukankan      html  css  js  c++  java
  • RichTextBox.MouseWheel事件控制父控件Panel的内容滚动

    此处以继承RichTextBox为例。简单来说就是截获windows的WM_MOUSEWHEEL消息,并将消息内容发送给父控件。

    1.自定义控件,继承RichTextBox。

    2.重写WndProc函数。

    [DllImport("User32.dll", CharSet = CharSet.Auto, EntryPoint = "SendMessage")]
    static extern IntPtr SendMessage(IntPtr hWnd, uint Msg, IntPtr wParam, IntPtr lParam);

    protected override void WndProc(ref Message m)
    {
    //WM_MOUSEWHEEL
    if (m.Msg == 0x020A)
    {
    //只针对父控件是Panel的情况
    if (this.Parent is Panel)
    {
    //将消息发送给父控件
    SendMessage(((Panel)this.Parent).Handle, 0x020A, m.WParam, m.LParam);
    //直接返回,让OnMouseWheel洗洗睡吧
    return;
    }
    }
    base.WndProc(ref m);
    }



  • 相关阅读:
    习惯
    mysql
    mysql
    mysql
    MYSQL
    MYSQL
    mysql
    手动从Spring中获取指定对象
    jdbc连接数据库
    java代码调用exe(cmd命令)
  • 原文地址:https://www.cnblogs.com/ainijiutian/p/2287195.html
Copyright © 2011-2022 走看看