查看源代码 wxSashEvent (wx v2.4.3)

当用户拖动 wxSashWindow 的分割条时,会发送一个分割条事件。

备注:当用户拖动属于分割条窗口的分割条,然后释放时,此事件会发送到该窗口,该窗口可能会在派生类、插件事件处理程序或父类中的事件表条目中处理该事件。请注意,wxSashWindow 本身不会更改窗口的大小。它依赖于应用程序的事件处理程序来执行此操作。这是因为应用程序可能必须处理调整大小的其他后果,或者它可能希望完全否决它。事件处理程序应查看拖动矩形:请参阅 getDragRect/1 以查看如果应用调整大小,窗口的新大小将是多少。它还应调用 getDragStatus/1 以查看拖动是正常还是超出当前允许的范围。

参见

此类派生自,并且可以使用以下类中的函数

wxWidgets 文档:wxSashEvent

事件

使用 wxEvtHandler:connect/3wxSashEventType 来订阅此类型的事件。

摘要

函数

返回一个矩形,表示如果应用调整大小,窗口的新大小。

返回分割条的状态:wxSASH_STATUS_OK 或 wxSASH_STATUS_OUT_OF_RANGE 之一。

返回拖动的边缘。

类型

-type wxSash() ::
          #wxSash{type :: wxSashEvent:wxSashEventType(),
                  edge :: wx:wx_enum(),
                  dragRect :: {X :: integer(), Y :: integer(), W :: integer(), H :: integer()},
                  dragStatus :: wx:wx_enum()}.
-type wxSashEvent() :: wx:wx_object().
-type wxSashEventType() :: sash_dragged.

函数

-spec getDragRect(This) -> {X :: integer(), Y :: integer(), W :: integer(), H :: integer()}
                     when This :: wxSashEvent().

返回一个矩形,表示如果应用调整大小,窗口的新大小。

是否需要设置窗口大小取决于应用程序。

-spec getDragStatus(This) -> wx:wx_enum() when This :: wxSashEvent().

返回分割条的状态:wxSASH_STATUS_OK 或 wxSASH_STATUS_OUT_OF_RANGE 之一。

如果拖动导致窗口的概念边界框翻转,例如,拖动将超出范围。

-spec getEdge(This) -> wx:wx_enum() when This :: wxSashEvent().

返回拖动的边缘。

返回值是 wxSASH_TOP、wxSASH_RIGHT、wxSASH_BOTTOM、wxSASH_LEFT 之一。