|
SimpleWindow
|
气泡样式的信息提示 更多...
#include <ToolTip.h>
Public 成员函数 | |
| BallonToolTip () | |
| 初始化BallonToolTip | |
Public 成员函数 继承自 sw::ToolTip | |
| ToolTip () | |
| 初始化ToolTip | |
| ToolTip (DWORD style) | |
| 初始化ToolTip,指定窗口样式 | |
| bool | SetToolTip (HWND hwnd, const std::wstring &tooltip) |
| 给指定句柄设置提示信息 | |
| bool | SetToolTip (const WndBase &wnd, const std::wstring &tooltip) |
| 给指定窗口或控件设置提示信息 | |
| void | RemoveAll () |
| 移除所有关联的提示信息 | |
Public 成员函数 继承自 sw::WndBase | |
| virtual | ~WndBase ()=0 |
| 析构函数,这里用纯虚函数使该类成为抽象类 | |
| virtual UIElement * | ToUIElement () |
| 尝试将对象转换成UIElement | |
| virtual Control * | ToControl () |
| 尝试将对象转换成Control | |
| virtual Window * | ToWindow () |
| 尝试将对象转换成Window | |
| bool | Equals (const WndBase &other) const |
| 判断当前对象与另一个WndBase是否相等 | |
| virtual std::wstring | ToString () const |
| 获取当前对象的描述字符串 | |
| void | UpdateInternalRect () |
| 同步窗口位置和尺寸到内部记录的Rect | |
| void | UpdateInternalText () |
| 同步窗口文本到内部记录的字符串 | |
| void | Show (int nCmdShow) |
| 该函数调用ShowWindow | |
| void | Close () |
| 发送关闭消息 | |
| void | Update () |
| 该函数调用UpdateWindow | |
| void | UpdateFont () |
| 更新字体 | |
| HFONT | GetFontHandle () |
| 获取字体句柄 | |
| void | Redraw (bool erase=false, bool updateWindow=false) |
| 重画 | |
| bool | IsVisible () const |
| 判断当前对象在界面中是否可视,与Visible属性不同的是该函数返回值会受父窗口的影响 | |
| DWORD | GetStyle () const |
| 获取窗口样式 | |
| void | SetStyle (DWORD style) |
| 设置窗口样式 | |
| bool | GetStyle (DWORD mask) const |
| 判断窗口是否设有指定样式 | |
| void | SetStyle (DWORD mask, bool value) |
| 打开或关闭指定的样式 | |
| DWORD | GetExtendedStyle () const |
| 获取扩展窗口样式 | |
| void | SetExtendedStyle (DWORD style) |
| 设置扩展窗口样式 | |
| bool | GetExtendedStyle (DWORD mask) |
| 判断窗口是否设有指定扩展样式 | |
| void | SetExtendedStyle (DWORD mask, bool value) |
| 打开或关闭指定的扩展样式 | |
| Point | PointToScreen (const Point &point) const |
| 获取用户区点在屏幕上点的位置 | |
| Point | PointFromScreen (const Point &screenPoint) const |
| 获取屏幕上点在当前用户区点的位置 | |
| LRESULT | SendMessageA (UINT uMsg, WPARAM wParam, LPARAM lParam) |
| 发送消息(ASCII) | |
| LRESULT | SendMessageW (UINT uMsg, WPARAM wParam, LPARAM lParam) |
| 发送消息(UNICODE) | |
| BOOL | PostMessageA (UINT uMsg, WPARAM wParam, LPARAM lParam) |
| 发送消息(ASCII)并立即返回 | |
| BOOL | PostMessageW (UINT uMsg, WPARAM wParam, LPARAM lParam) |
| 发送消息(UNICODE)并立即返回 | |
| HitTestResult | NcHitTest (const Point &testPoint) |
| 测试指定点在窗口的哪一部分 | |
| void | Invoke (const SimpleAction &action) |
| 在窗口线程上执行指定委托 | |
| void | InvokeAsync (const SimpleAction &action) |
| 在窗口线程上执行指定委托,并立即返回 | |
| DWORD | GetThreadId () const |
| 获取当前窗口所属线程的线程id | |
| bool | CheckAccess () const |
| 判断当前线程是否为窗口所属线程 | |
| bool | CheckAccess (const WndBase &other) const |
| 判断当前对象所属线程是否与另一个WndBase对象所属线程相同 | |
| template<typename TDerived , typename TProperty > | |
| auto | GetProperty (TProperty TDerived::*prop) -> typename std::enable_if< std::is_base_of< WndBase, TDerived >::value &&_IsReadableProperty< TProperty >::value, typename TProperty::TValue >::type |
| 获取属性值 | |
| template<typename TDerived , typename TProperty > | |
| auto | SetProperty (TProperty TDerived::*prop, typename TProperty::TSetterParam value) -> typename std::enable_if< std::is_base_of< WndBase, TDerived >::value &&_IsWritableProperty< TProperty >::value >::type |
| 设置属性值 | |
Public 成员函数 继承自 sw::DynamicObject | |
| virtual | ~DynamicObject ()=default |
| 析构函数 | |
| std::type_index | GetTypeIndex () const |
| 获取对象的类型索引 | |
| template<typename T > | |
| bool | IsType (T **pout=nullptr) |
| 判断对象是否为指定类型 | |
| template<typename T > | |
| bool | IsType (const T **pout=nullptr) const |
| 判断对象是否为指定类型 | |
| template<typename T > | |
| T & | DynamicCast () |
| 将对象动态转换为指定类型的引用 | |
| template<typename T > | |
| const T & | DynamicCast () const |
| 将对象动态转换为指定类型的常量引用 | |
| template<typename T > | |
| auto | UnsafeCast () -> typename std::enable_if< _IsStaticCastable< DynamicObject *, T * >::value, T & >::type |
| 将对象不安全地转换为指定类型的引用 | |
| template<typename T > | |
| auto | UnsafeCast () -> typename std::enable_if<!_IsStaticCastable< DynamicObject *, T * >::value, T & >::type |
| 将对象不安全地转换为指定类型的引用 | |
| template<typename T > | |
| auto | UnsafeCast () const -> typename std::enable_if< _IsStaticCastable< DynamicObject *, T * >::value, const T & >::type |
| 将对象不安全地转换为指定类型的引用 | |
| template<typename T > | |
| auto | UnsafeCast () const -> typename std::enable_if<!_IsStaticCastable< DynamicObject *, T * >::value, const T & >::type |
| 将对象不安全地转换为指定类型的引用 | |
Public 成员函数 继承自 sw::INotifyObjectDead | |
| virtual | ~INotifyObjectDead () |
| 析构时触发对象销毁事件 | |
Public 成员函数 继承自 sw::INotifyPropertyChanged | |
| virtual | ~INotifyPropertyChanged ()=default |
| 默认析构函数 | |
Public 成员函数 继承自 sw::IToString< WndBase > | |
| std::wstring | ToString () const |
| 获取描述当前对象的字符串 | |
Public 成员函数 继承自 sw::IEqualityComparable< WndBase > | |
| bool | Equals (const WndBase & other) const |
| 判断当前对象与另一个对象是否相等 | |
| bool | operator== (const WndBase & other) const |
| 判断当前对象是否与另一个对象相等 | |
| bool | operator!= (const WndBase & other) const |
| 判断当前对象是否与另一个对象不相等 | |
额外继承的成员函数 | |
静态 Public 成员函数 继承自 sw::WndBase | |
| static WndBase * | GetWndBase (HWND hwnd) noexcept |
| 通过窗口句柄获取WndBase | |
| static bool | IsPtrValid (const WndBase *ptr) noexcept |
| 检查指针是否指向有效的WndBase对象 | |
Public 属性 继承自 sw::ToolTip | |
| const Property< int > | InitialDelay |
| 触发提示信息的时间,以毫秒为单位,设置负数可恢复默认值 | |
| const Property< ToolTipIcon > | ToolTipIcon |
| 提示框中显示的图标,标题不为空时图标才会显示 | |
| const Property< std::wstring > | ToolTipTitle |
| 提示框中显示的标题 | |
| const Property< double > | MaxTipWidth |
| 提示框的最大宽度,若未设置则为-1,设置负值可取消限制 | |
Public 属性 继承自 sw::WndBase | |
| const ReadOnlyProperty< HWND > | Handle |
| 窗口句柄 | |
| const Property< sw::Font > | Font |
| 字体 | |
| const Property< std::wstring > | FontName |
| 字体名称 | |
| const Property< double > | FontSize |
| 字体大小 | |
| const Property< sw::FontWeight > | FontWeight |
| 字体粗细 | |
| const Property< sw::Rect > | Rect |
| 位置和尺寸 | |
| const Property< double > | Left |
| 左边 | |
| const Property< double > | Top |
| 顶边 | |
| const Property< double > | Width |
| 宽度 | |
| const Property< double > | Height |
| 高度 | |
| const ReadOnlyProperty< sw::Rect > | ClientRect |
| 用户区尺寸 | |
| const ReadOnlyProperty< double > | ClientWidth |
| 用户区宽度 | |
| const ReadOnlyProperty< double > | ClientHeight |
| 用户区高度 | |
| const Property< bool > | Enabled |
| 窗口或控件是否可用 | |
| const Property< bool > | Visible |
| 窗口或控件是否可见 | |
| const Property< std::wstring > | Text |
| 窗口标题或控件文本 | |
| const Property< bool > | Focused |
| 窗口是否拥有焦点 | |
| const ReadOnlyProperty< WndBase * > | Parent |
| 父窗口 | |
| const ReadOnlyProperty< bool > | IsDestroyed |
| 是否已销毁,当该值为true时不应该继续使用当前对象 | |
| const Property< bool > | AcceptFiles |
| 是否接受拖放文件 | |
| const ReadOnlyProperty< bool > | IsControl |
| 当前对象是否是控件 | |
| const ReadOnlyProperty< std::wstring > | ClassName |
| 窗口类名 | |
| const Property< bool > | IsGroupStart |
| 窗口是否为一组控件中的第一个控件 | |
| const ReadOnlyProperty< bool > | IsMouseCaptured |
| 鼠标是否被当前窗口捕获 | |
Public 属性 继承自 sw::INotifyObjectDead | |
| ObjectDeadEventHandler | ObjectDead |
| 对象销毁时触发该事件 | |
Public 属性 继承自 sw::INotifyPropertyChanged | |
| PropertyChangedEventHandler | PropertyChanged |
| 当属性值更改时触发的事件 | |
Protected 成员函数 继承自 sw::WndBase | |
| WndBase () | |
| 初始化WndBase | |
| WndBase (const WndBase &)=delete | |
| WndBase (WndBase &&)=delete | |
| WndBase & | operator= (const WndBase &)=delete |
| WndBase & | operator= (WndBase &&)=delete |
| void | InitWindow (LPCWSTR lpWindowName, DWORD dwStyle, DWORD dwExStyle) |
| 初始化为窗口,该函数会调用CreateWindowExW | |
| void | InitControl (LPCWSTR lpClassName, LPCWSTR lpWindowName, DWORD dwStyle, DWORD dwExStyle, LPVOID lpParam=NULL) |
| 初始化为控件,该函数会调用CreateWindowExW | |
| LRESULT | DefaultWndProc (const ProcMsg &msg) |
| 调用默认的WndProc,对于窗口则调用DefWindowProcW,控件则调用_controlOldWndProc | |
| virtual LRESULT | WndProc (ProcMsg &refMsg) |
| 对WndProc的封装 | |
| virtual std::wstring & | GetInternalText () |
| 获取内部记录窗口文本的字符串引用 | |
| virtual void | SetInternalText (const std::wstring &value) |
| 修改窗口文本,该函数默认实现为调用SetWindowTextW | |
| virtual bool | OnCreate () |
| 接收到WM_CREATE时调用该函数 | |
| virtual bool | OnClose () |
| 接收到WM_CLOSE时调用该函数 | |
| virtual bool | OnDestroy () |
| 接收到WM_DESTROY时调用该函数 | |
| virtual bool | OnPaint () |
| 接收到WM_PAINT时调用该函数 | |
| virtual void | OnEndPaint () |
| 在OnPaint函数完成之后调用该函数 | |
| virtual bool | OnNcPaint (HRGN hRgn) |
| 接收到WM_NCPAINT时调用该函数 | |
| virtual void | OnEndNcPaint () |
| 在OnNcPaint函数完成之后调用该函数 | |
| virtual bool | OnMove (const Point &newClientPosition) |
| 接收到WM_MOVE时调用该函数 | |
| virtual bool | OnSize (const Size &newClientSize) |
| 接收到WM_SIZE时调用该函数 | |
| virtual void | OnTextChanged () |
| Text属性更改时调用此函数 | |
| virtual bool | OnSetFocus (HWND hPrevFocus) |
| 接收到WM_SETFOCUS时调用该函数 | |
| virtual bool | OnKillFocus (HWND hNextFocus) |
| 接收到WM_KILLFOCUS时调用该函数 | |
| virtual bool | OnMouseMove (const Point &mousePosition, MouseKey keyState) |
| 接收到WM_MOUSEMOVE时调用该函数 | |
| virtual bool | OnMouseLeave () |
| 接收到WM_MOUSELEAVE时调用该函数 | |
| virtual bool | OnMouseWheel (int wheelDelta, const Point &mousePosition, MouseKey keyState) |
| 接收到WM_MOUSEWHEEL时调用该函数 | |
| virtual bool | OnMouseLeftButtonDown (const Point &mousePosition, MouseKey keyState) |
| 接收到WM_LBUTTONDOWN时调用该函数 | |
| virtual bool | OnMouseLeftButtonUp (const Point &mousePosition, MouseKey keyState) |
| 接收到WM_LBUTTONUP时调用该函数 | |
| virtual bool | OnMouseLeftButtonDoubleClick (const Point &mousePosition, MouseKey keyState) |
| 接收到WM_LBUTTONDBLCLK时调用该函数 | |
| virtual bool | OnMouseRightButtonDown (const Point &mousePosition, MouseKey keyState) |
| 接收到WM_RBUTTONDOWN时调用该函数 | |
| virtual bool | OnMouseRightButtonUp (const Point &mousePosition, MouseKey keyState) |
| 接收到WM_RBUTTONUP时调用该函数 | |
| virtual bool | OnMouseRightButtonDoubleClick (const Point &mousePosition, MouseKey keyState) |
| 接收到WM_RBUTTONDBLCLK时调用该函数 | |
| virtual bool | OnMouseMiddleButtonDown (const Point &mousePosition, MouseKey keyState) |
| 接收到WM_MBUTTONDOWN时调用该函数 | |
| virtual bool | OnMouseMiddleButtonUp (const Point &mousePosition, MouseKey keyState) |
| 接收到WM_MBUTTONUP时调用该函数 | |
| virtual bool | OnMouseMiddleButtonDoubleClick (const Point &mousePosition, MouseKey keyState) |
| 接收到WM_MBUTTONDBLCLK时调用该函数 | |
| virtual bool | OnChar (wchar_t ch, const KeyFlags &flags) |
| 接收到WM_CHAR时调用该函数 | |
| virtual bool | OnDeadChar (wchar_t ch, const KeyFlags &flags) |
| 接收到WM_DEADCHAR时调用该函数 | |
| virtual bool | OnKeyDown (VirtualKey key, const KeyFlags &flags) |
| 接收到WM_KEYDOWN时调用该函数 | |
| virtual bool | OnKeyUp (VirtualKey key, const KeyFlags &flags) |
| 接收到WM_KEYUP时调用该函数 | |
| virtual bool | OnSysChar (wchar_t ch, const KeyFlags &flags) |
| 接收到WM_SYSCHAR时调用该函数 | |
| virtual bool | OnSysDeadChar (wchar_t ch, const KeyFlags &flags) |
| 接收到WM_SYSDEADCHAR时调用该函数 | |
| virtual bool | OnSysKeyDown (VirtualKey key, const KeyFlags &flags) |
| 接收到WM_SYSKEYDOWN时调用该函数 | |
| virtual bool | OnSysKeyUp (VirtualKey key, const KeyFlags &flags) |
| 接收到WM_SYSKEYUP时调用该函数 | |
| virtual void | VisibleChanged (bool newVisible) |
| Visible属性改变时调用此函数 | |
| virtual bool | SetParent (WndBase *parent) |
| 设置父窗口 | |
| virtual void | ParentChanged (WndBase *newParent) |
| 父窗口改变时调用此函数 | |
| virtual void | OnCommand (int code) |
| 当父窗口接收到控件的WM_COMMAND时调用该函数 | |
| virtual void | OnControlCommand (WndBase *pControl, int code, int id) |
| 当WM_COMMAND接收到控件命令时调用该函数 | |
| virtual void | OnMenuCommand (int id) |
| 当WM_COMMAND接收到菜单命令时调用该函数 | |
| virtual void | OnAcceleratorCommand (int id) |
| 当WM_COMMAND接收到快捷键命令时调用该函数 | |
| virtual void | HandleInitialized (HWND hwnd) |
| 窗口句柄初始化完成 | |
| virtual void | FontChanged (HFONT hfont) |
| 字体改变时调用该函数 | |
| virtual bool | OnSetCursor (HWND hwnd, HitTestResult hitTest, int message, bool &result) |
| 接收到WM_SETCURSOR消息时调用该函数 | |
| virtual bool | OnContextMenu (bool isKeyboardMsg, const Point &mousePosition) |
| 接收到WM_CONTEXTMENU后调用目标控件的该函数 | |
| virtual bool | OnMenuSelect (HMENU hMenu, int id, int flags) |
| 接收到WM_MENUSELECT后调用该函数 | |
| virtual bool | OnNotify (NMHDR *pNMHDR, LRESULT &result) |
| 接收到WM_NOTIFY后调用该函数 | |
| virtual bool | OnNotified (NMHDR *pNMHDR, LRESULT &result) |
| 父窗口接收到WM_NOTIFY后且父窗口OnNotify函数返回false时调用发出通知控件的该函数 | |
| virtual bool | OnVerticalScroll (int event, int pos) |
| 接收到WM_VSCROLL时调用目标控件的该函数 | |
| virtual bool | OnHorizontalScroll (int event, int pos) |
| 接收到WM_HSCROLL时调用目标控件的该函数 | |
| virtual bool | OnEnabledChanged (bool newValue) |
| 接收到WM_ENABLE时调用该函数 | |
| virtual bool | OnCtlColor (WndBase *pControl, HDC hdc, HBRUSH &hRetBrush) |
| 接收到WM_CTLCOLORxxx时调用该函数 | |
| virtual bool | OnColor (HDC hdc, HBRUSH &hRetBrush) |
| 父窗口接收到WM_CTLCOLORxxx时调用对应控件的该函数 | |
| virtual void | OnNcHitTest (const Point &testPoint, HitTestResult &result) |
| 接收到WM_NCHITTEST后调用该函数 | |
| virtual bool | OnEraseBackground (HDC hdc, LRESULT &result) |
| 接收到WM_ERASEBKGND时调用该函数 | |
| virtual bool | OnDrawItem (int id, DRAWITEMSTRUCT *pDrawItem) |
| 接收到WM_DRAWITEM时调用该函数 | |
| virtual bool | OnDrawItemSelf (DRAWITEMSTRUCT *pDrawItem) |
| 父窗口接收到WM_DRAWITEM后且父窗口OnDrawItem函数返回false时调用发出通知控件的该函数 | |
| virtual bool | OnMeasureItem (int id, MEASUREITEMSTRUCT *pMeasure) |
| 接收到WM_MEASUREITEM时调用该函数 | |
| virtual bool | OnMeasureItemSelf (MEASUREITEMSTRUCT *pMeasure) |
| 父窗口接收到WM_MEASUREITEM后且父窗口OnMeasureItem函数返回false时调用发出通知控件的该函数 | |
| virtual bool | OnDropFiles (HDROP hDrop) |
| 接收到WM_DROPFILES时调用该函数 | |
Protected 成员函数 继承自 sw::ObservableObject | |
| void | RaisePropertyChanged (FieldId propertyId) |
| 触发属性更改通知事件 | |
| template<typename T , typename TProperty > | |
| void | RaisePropertyChanged (TProperty T::*property) |
| 触发属性更改通知事件 | |
气泡样式的信息提示