SimpleWindow
载入中...
搜索中...
未找到
SpinBox.h
1#pragma once
2
3#include "TextBoxBase.h"
4
5namespace sw
6{
10 class SpinBox : public TextBoxBase
11 {
12 private:
16 HWND _hUpDown = NULL;
17
21 int _upDownWidth = 0;
22
26 std::vector<UDACCEL> _accels;
27
28 public:
33
38
43
48
53
54 public:
59
66 SpinBox &AddAccel(uint32_t seconds, uint32_t increment);
67
72
73 protected:
77 virtual void OnTextChanged() override;
78
83 virtual void OnHandleChanged(HWND hwnd) override;
84
90 virtual bool OnMove(const Point &newClientPosition) override;
91
97 virtual bool OnSize(const Size &newClientSize) override;
98
104 virtual bool OnKillFocus(HWND hNextFocus) override;
105
106 private:
110 void _InitSpinBox();
111
115 void _InitUpDownControl();
116
120 void _InitAccels();
121
126 int _GetPos32();
127
132 void _SetPos32(int pos);
133
140 void _GetRange32(int *min, int *max);
141
147 void _SetRange32(int min, int max);
148
154 void _SetAccel(size_t count, UDACCEL *pAccels);
155
159 void _UpdateUpDownPos();
160 };
161};
属性
Definition Property.h:1743
数值调节框
Definition SpinBox.h:11
virtual bool OnMove(const Point &newClientPosition) override
接收到WM_MOVE时调用该函数
void ClearAccels()
清除所有加速信息
SpinBox & AddAccel(uint32_t seconds, uint32_t increment)
添加加速信息
const Property< int > Minimum
最小值,默认为0
Definition SpinBox.h:32
virtual void OnHandleChanged(HWND hwnd) override
控件句柄发生改变时调用该函数
const Property< int > Maximum
最大值,默认为100
Definition SpinBox.h:37
virtual void OnTextChanged() override
Text属性更改时调用此函数
const Property< bool > Hexadecimal
是否显示为十六进制,默认为false
Definition SpinBox.h:47
const Property< int > Value
当前值,默认为0
Definition SpinBox.h:42
const Property< uint32_t > Increment
每次点击UpDown控件时增量,默认为1
Definition SpinBox.h:52
virtual bool OnSize(const Size &newClientSize) override
接收到WM_SIZE时调用该函数
SpinBox()
初始化数值调节框
virtual bool OnKillFocus(HWND hNextFocus) override
接收到WM_KILLFOCUS时调用该函数
窗口类名为EDIT的控件类型的基类
Definition TextBoxBase.h:11
表示相对于左上角的点坐标
Definition Point.h:15
尺寸
Definition Size.h:15