【问题标题】:Resizing a panel in C#, Windows Forms在 C#、Windows 窗体中调整面板的大小
【发布时间】:2009-02-22 03:56:59
【问题描述】:

如何让用户在运行时通过拖动角来调整面板的大小?

【问题讨论】:

    标签: c# winforms visual-studio


    【解决方案1】:

    你可以拦截鼠标位置和点击..如果它在一个角落里然后设置一个调整大小的布尔值,然后在 mousemove 事件上你可以实现这样的东西..

      if (_resizing)
      {
        this.Height = top + e.Y;
        this.Width = width + e.X;
      }
    

    【讨论】:

      【解决方案2】:

      我不知道拖动角落,但您可以停靠面板并使用拆分器为用户提供调整停靠区域大小的位置。

      【讨论】:

        【解决方案3】:

        如果您想使用实际的 System.Windows.Forms.Panel 并使其动态调整大小,那么您必须像进行拖放一样进行操作。您必须处理面板上的鼠标 Click 事件,确定您是否位于面板边缘(2-3 像素内),然后处理 Drag 事件并更改面板的 Size 属性。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2013-04-30
          • 1970-01-01
          • 1970-01-01
          • 2011-06-25
          • 2011-11-26
          相关资源
          最近更新 更多