代码之家  ›  专栏  ›  技术社区  ›  Sören Kuklau Keith Boynton

捕捉自定义SplitContainerDesigner的鼠标事件

  •  0
  • Sören Kuklau Keith Boynton  · 技术社区  · 14 年前

    我的实现大致如下 this ,只不过我没有收到必要的鼠标事件。我试过事件处理程序, On* 覆盖和覆盖 WndProc 在用户控件本身、主机控件和父窗体中,但我似乎没有收到 WM_MOUSEMOVE WM_LBUTTONDOWN WM_LBUTTONUP 在任何地方 . 每 this bug report ,我应该收到 WM\ U鼠标移动 在“控件设计器”中;我不知道这是什么意思。

    有什么办法可以实现一个可拖动的拆分器吗?

    1 回复  |  直到 7 年前
        1
  •  0
  •   Sören Kuklau Keith Boynton    14 年前

    一旦你知道怎么做就很容易了。

    1. 设置 Designer ControlDesigner .
    2. OnSetCursor 方法,以便在拆分器区域上显示 HSplit VSplit 光标。 Per this ticket ,确保 设置控件的游标(这将导致堆栈溢出、崩溃或其他不稳定的行为,当然不是您想要的),而是 Cursor.Current .
    3. 覆盖 OnMouseDragBegin , OnMouseDragMove OnMouseDragEnd 调整内部面板的大小。