42 bool _isFirstShow =
true;
62 std::unique_ptr<LayoutHost> _defaultLayout;
67 bool _isModal =
false;
77 bool _isBorderless =
false;
82 int _dialogResult = 0;
87 bool _isDestroying =
false;
92 int _disableLayoutCount = 0;
341 template <
typename TLayout>
343 ->
typename std::enable_if<std::is_base_of<LayoutHost, TLayout>::value>::type
345 auto layout = std::make_unique<TLayout>();
347 _defaultLayout = std::move(
layout);
354 template <std::
nullptr_t>
357 _defaultLayout.reset(
nullptr);
对话框接口
Definition IDialog.h:11
值转换器接口
Definition IValueConverter.h:14
用于托管元素的布局方式的对象类型,是所有布局方式类型的基类
Definition LayoutHost.h:11
const ReadOnlyProperty< sw::Rect > RestoreRect
窗口在最小化或最大化之前的位置和尺寸
Definition Window.h:181
virtual bool OnDestroy() override
接收到WM_DESTROY时调用该函数
bool DisableLayout()
禁用窗口布局
const Property< bool > Topmost
窗口是否置顶
Definition Window.h:134
const Property< bool > Borderless
窗口无边框
Definition Window.h:170
void SetLayout()
取消通过SetLayout设置的布局方式
Definition Window.h:355
virtual void OnActived()
窗口成为前台窗口时调用该函数
const Property< WindowState > State
窗口状态
Definition Window.h:114
auto SetLayout() -> typename std::enable_if< std::is_base_of< LayoutHost, TLayout >::value >::type
设置窗口的默认布局方式
Definition Window.h:342
const Property< sw::Menu * > Menu
窗口顶部的菜单栏
Definition Window.h:144
static const ReadOnlyProperty< int > WindowCount
当前线程已创建的窗口数
Definition Window.h:104
virtual void OnFirstShow()
窗口第一次显示时调用该函数
const ReadOnlyProperty< bool > IsLayoutDisabled
窗口布局是否被禁用
Definition Window.h:186
void DrawMenuBar()
重回窗口的菜单栏
virtual bool OnCreate() override
接收到WM_CREATE时调用该函数
virtual int ShowDialog(Window &owner)
将窗口显示为模式对话框
virtual bool OnDpiChanged(int dpiX, int dpiY, RECT &newRect)
接收到WM_DPICHANGED时调用该函数
const Property< WindowStartupLocation > StartupLocation
窗口初次启动的位置
Definition Window.h:109
bool SizeToContent()
调整窗口尺寸以适应其内容大小
virtual bool OnClose() override
接收到WM_CLOSE时调用该函数
const Property< bool > SizeBox
窗口是否可调整大小
Definition Window.h:119
static const ReadOnlyProperty< Window * > ActiveWindow
当前线程的活动窗口
Definition Window.h:98
virtual int ShowDialog(Window *owner=nullptr) override
将窗口显示为模式对话框
const Property< bool > MaximizeBox
最大化按钮是否可用
Definition Window.h:124
const ReadOnlyProperty< bool > IsModal
窗口是否显示为模态窗口,当调用ShowDialog时该属性值为true,否则为false
Definition Window.h:149
const Property< double > Opacity
窗口的透明度,范围为0.0~1.0
Definition Window.h:165
virtual void OnMenuCommand(int id) override
当OnCommand接收到菜单命令时调用该函数
void SetIcon(HICON hIcon)
设置图标
virtual void OnMinMaxSizeChanged() override
当MinWidth、MinHeight、MaxWidth或MaxHeight属性更改时调用此函数
virtual void OnInactived()
窗口成为后台窗口时调用该函数
const Property< bool > MinimizeBox
最小化按钮是否可用
Definition Window.h:129
bool EnableLayout(bool reset=false)
恢复窗口布局,与DisableLayout配对使用
const Property< bool > IsLayered
窗口是否为分层窗口,即WS_EX_LAYERED样式是否被设置
Definition Window.h:159
virtual LayoutHost * GetDefaultLayout() override
获取默认布局对象
const Property< bool > ToolWindow
是否显示为ToolWindow (窄边框)
Definition Window.h:139
virtual void Show() override
显示窗口
const Property< int > DialogResult
窗口的对话框结果,ShowDialog返回该值
Definition Window.h:176
virtual void Close() override
关闭窗口
virtual LRESULT WndProc(ProcMsg &refMsg) override
对WndProc的封装
virtual bool OnEraseBackground(HDC hdc, LRESULT &result) override
接收到WM_ERASEBKGND时调用该函数
virtual bool OnPaint() override
接收到WM_PAINT时调用该函数
const Property< Window * > Owner
拥有者窗口
Definition Window.h:154
SimpleWindow框架的顶级命名空间,所有公共类型、控件、枚举和工具函数均定义于此。
Definition Alignment.h:4
@ Manual
需手动调用QuitMsgLoop以退出消息循环
WindowState
窗口状态
Definition Window.h:13
WindowStartupLocation
窗口启动位置
Definition Window.h:22
对Windows窗口消息的封装
Definition ProcMsg.h:10
表示一个矩形区域
Definition Rect.h:17