查看源代码 wxSizeEvent (wx v2.4.3)
大小事件包含有关 wxWindow
的大小更改事件的信息。
当窗口大小被调整时,将调用 EVT_SIZE 处理函数。
您可能希望使用此功能来适当调整框架的子窗口大小。
请注意,传递的大小是整个窗口的大小:调用 wxWindow:getClientSize/1
获取可供应用程序使用的区域。
当窗口大小被调整时,通常只有窗口的一小部分损坏,您可能只需要重绘该区域。但是,如果您的绘图取决于窗口的大小,您可能需要显式清除 DC 并重绘整个窗口。在这种情况下,您可能需要调用 wxWindow:refresh/2
来使整个窗口失效。
重要
:Sizer(请参阅 overview_sizer)依赖于大小事件才能正常运行。因此,在基于 sizer 的布局中,请不要忘记在您捕获的所有大小事件上调用 Skip(并且当您不需要时不要捕获大小事件)。
参见
{Width,Height}
此类派生自 wxEvent,可以使用其中的函数
wxWidgets 文档:wxSizeEvent
事件
使用 wxEvtHandler:connect/3
和 wxSizeEventType
来订阅此类型的事件。
摘要
类型
函数
-spec getRect(This) -> {X :: integer(), Y :: integer(), W :: integer(), H :: integer()} when This :: wxSizeEvent().
-spec getSize(This) -> {W :: integer(), H :: integer()} when This :: wxSizeEvent().
返回生成大小更改事件的窗口的整个大小。
这是窗口的新的总大小,即与现在调用 wxWindow:getSize/1
返回的大小相同。如果您在顶级窗口(例如 wxFrame
)中捕获此事件,请使用 wxWindow:getClientSize/1
来查找窗口内容可用的尺寸。