查看源代码 wxSashEvent (wx v2.4.3)
当用户拖动 wxSashWindow
的分割条时,会发送一个分割条事件。
备注:当用户拖动属于分割条窗口的分割条,然后释放时,此事件会发送到该窗口,该窗口可能会在派生类、插件事件处理程序或父类中的事件表条目中处理该事件。请注意,wxSashWindow
本身不会更改窗口的大小。它依赖于应用程序的事件处理程序来执行此操作。这是因为应用程序可能必须处理调整大小的其他后果,或者它可能希望完全否决它。事件处理程序应查看拖动矩形:请参阅 getDragRect/1
以查看如果应用调整大小,窗口的新大小将是多少。它还应调用 getDragStatus/1
以查看拖动是正常还是超出当前允许的范围。
参见
此类派生自,并且可以使用以下类中的函数
wxWidgets 文档:wxSashEvent
事件
使用 wxEvtHandler:connect/3
和 wxSashEventType
来订阅此类型的事件。
摘要
类型
-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 之一。