FRAMEWIN_Obj内存图:
GUI_RECT |
Rect |
WM_
Obj
Win;
|
WIDGET
Widget;
|
FRAMEWIN_Obj
|
GUI_RECT |
InvalidRect | |||
WM_CALLBACK*
|
cb= _FRAMEWIN_Callback
| |||
WM_HWIN |
hNextLin; | |||
WM_HWIN |
hParent; | |||
WM_HWIN |
hFirstChild; | |||
WM_HWIN |
hNext; | |||
U16 |
Status; | |||
const WIDGET_EFFECT* |
pEffect |
| ||
I16
|
Id;
| |||
U16 |
State; | |||
const GUI_FONT GUI_UNI_PTR * |
pFont |
FRAMEWIN_PROPS
Props;
| ||
GUI_COLOR |
aBarColor[2]; | |||
GUI_COLOR |
aTextColor[2]; | |||
GUI_COLOR |
ClientColor; | |||
I16 |
TitleHeight; | |||
I16 |
BorderSize; | |||
I16 |
IBorderSize; | |||
WM_CALLBACK*
|
cb;= _cbCallback
|
| ||
WM_HWIN |
hClient; | |||
WM_HWIN |
hMenu; | |||
WM_HWIN |
hText; | |||
GUI_RECT |
rRestore; | |||
I16 |
TextAlign; | |||
U16 |
Flags; | |||
WM_HWIN |
hFocussedChild; | |||
WM_DIALOG_STATUS* |
pDialogStatus; | |||
GUI_HOOK* |
pFirstHook; |
在WM_CreateWindowAsChild中申请空间,并在此函数中填写WM_Obj部分
在FRAMEWIN_CreateEx中调用WIDGET__Init填写WIDGET的其他部分。并在此函数中填写FRAMEWIN_Obj的其他部分,并再次调用WM_CreateWindowAsChild为hClient分配空间。
BUTTON_Obj内存图:
GUI_RECT |
Rect |
WM_
Obj
Win;
|
WIDGET
Widget;
|
BUTTON_Obj
|
GUI_RECT |
InvalidRect | |||
WM_CALLBACK*
|
cb= BUTTON_Callback
| |||
WM_HWIN |
hNextLin; | |||
WM_HWIN |
hParent; | |||
WM_HWIN |
hFirstChild; | |||
WM_HWIN |
hNext; | |||
U16 |
Status; | |||
const WIDGET_EFFECT* |
pEffect |
| ||
I16
|
Id;
| |||
U16 |
State; | |||
GUI_COLOR |
aBkColor[3]; |
BUTTON_PROPS
Props;
| ||
GUI_COLOR |
aTextColor[3]; | |||
const GUI_FONT GUI_UNI_PTR * |
pFont; | |||
I16 |
Align; | |||
WM_HMEM
|
hpText;
|
| ||
WM_HMEM |
ahDrawObj[3]; | |||
int |
DebugId; |
在WM_CreateWindowAsChild中申请空间,并在此函数中填写WM_Obj部分
在BUTTON_CreateEx中调用WIDGET__Init填写WIDGET的其他部分。并在此函数中填写BUTTON_Obj的其他部分.
TEXT_Obj内存图:
GUI_RECT |
Rect |
WM_
Obj
Win;
|
WIDGET
Widget;
|
TEXT_Obj
|
GUI_RECT |
InvalidRect | |||
WM_CALLBACK*
|
cb= _TEXT_Callback
| |||
WM_HWIN |
hNextLin; | |||
WM_HWIN |
hParent; | |||
WM_HWIN |
hFirstChild; | |||
WM_HWIN |
hNext; | |||
U16 |
Status; | |||
const WIDGET_EFFECT* |
pEffect |
| ||
I16
|
Id;
| |||
U16 |
State; | |||
WM_HMEM |
hpText; |
| ||
const GUI_FONT GUI_UNI_PTR * |
pFont; | |||
I16 |
Align; | |||
GUI_COLOR |
TextColor; | |||
GUI_COLOR |
BkColor; | |||
int; |
DebugId |
在WM_CreateWindowAsChild中申请空间,并在此函数中填写WM_Obj部分
在TEXT_CreateEx中调用WIDGET__Init填写WIDGET的其他部分。并在此函数中填写TEXT_Obj的其他部分。
EDIT_Obj内存图:
GUI_RECT |
Rect |
WM_
Obj
Win;
|
WIDGET
Widget;
|
EDIT_Obj
|
GUI_RECT |
InvalidRect | |||
WM_CALLBACK*
|
cb= EDIT__Callback
| |||
WM_HWIN |
hNextLin; | |||
WM_HWIN |
hParent; | |||
WM_HWIN |
hFirstChild; | |||
WM_HWIN |
hNext; | |||
U16 |
Status; | |||
const WIDGET_EFFECT* |
pEffect |
| ||
I16
|
Id;
| |||
U16 |
State; | |||
WM_HMEM |
hpText; |
| ||
I16 |
MaxLen; | |||
U16 |
BufferSize; | |||
I32 |
Min, Max; | |||
U8 |
NumDecs; | |||
U32 |
CurrentValue; | |||
int |
CursorPos; | |||
unsigned |
SelSize; | |||
U8 |
EditMode; | |||
U8 |
XSizeCursor; | |||
U8 |
Flags; | |||
tEDIT_AddKeyEx * |
pfAddKeyEx; | |||
tEDIT_UpdateBuffer * |
pfUpdateBuffer; | |||
int |
Align; |
EDIT_PROPS Props; | ||
int |
Border; | |||
const GUI_FONT GUI_UNI_PTR * |
pFont; | |||
GUI_COLOR |
aTextColor[2]; | |||
GUI_COLOR |
aBkColor[2]; | |||
int; |
DebugId |
| ||
int |
CurrsorShow; |
在WM_CreateWindowAsChild中申请空间,并在此函数中填写WM_Obj部分
在FRAMEWIN_CreateEx中调用WIDGET__Init填写WIDGET的其他部分。并在此函数中填写EDIT_Obj的其他部分。
LISTBOX_Obj内存图:
GUI_RECT |
Rect |
WM_
Obj
Win;
|
WIDGET
Widget;
|
LISTBOX_Obj
|
GUI_RECT |
InvalidRect | |||
WM_CALLBACK*
|
cb= _LISTBOX_Callback
| |||
WM_HWIN |
hNextLin; | |||
WM_HWIN |
hParent; | |||
WM_HWIN |
hFirstChild; | |||
WM_HWIN |
hNext; | |||
U16 |
Status; | |||
const WIDGET_EFFECT* |
pEffect |
| ||
I16
|
Id;
| |||
U16 |
State; | |||
U16 |
NumItems; |
GUI_ARRAY
ItemArray; | ||
WM_HMEM |
haHandle; | |||
GUI_ARRAY_STATE |
InitState; | |||
WIDGET_DRAW_ITEM_FUNC* |
pfDrawItem; |
| ||
int, |
NumItems |
WM_SCROLL_STATE ScrollStateV;
| ||
int |
v | |||
int |
PageSize; | |||
int, |
NumItems |
WM_SCROLL_STATE ScrollStateH;
| ||
int |
v | |||
int |
PageSize; | |||
const GUI_FONT GUI_UNI_PTR* |
pFont; |
LISTBOX_PROPS Props;
| ||
U16 |
ScrollStepH; | |||
GUI_COLOR |
aBackColor[4]; | |||
GUI_COLOR |
aTextColor[4]; | |||
WM_HWIN |
hOwner; |
| ||
int |
DebugId; | |||
I16 |
Sel; | |||
U8 |
Flags; | |||
U8 |
ScrollbarWidth; | |||
U16 |
ItemSpacing; |
在WM_CreateWindowAsChild中申请空间,并在此函数中填写WM_Obj部分
在LISTBOX_CreateEx中调用WIDGET__Init填写WIDGET的其他部分。并在此函数中填写LISTBOX_Obj的其他部分。
CHECKBOX_Obj内存图:
GUI_RECT |
Rect |
WM_
Obj
Win;
|
WIDGET
Widget;
|
CHECKBOX_Obj
|
GUI_RECT |
InvalidRect | |||
WM_CALLBACK*
|
cb= _CHECKBOX_Callback
| |||
WM_HWIN |
hNextLin; | |||
WM_HWIN |
hParent; | |||
WM_HWIN |
hFirstChild; | |||
WM_HWIN |
hNext; | |||
U16 |
Status; | |||
const WIDGET_EFFECT* |
pEffect |
| ||
I16
|
Id;
| |||
U16 |
State; | |||
const GUI_FONT GUI_UNI_PTR * |
pFont; |
CHECKBOX_PROPS
Props;
| ||
GUI_COLOR |
aBkColorBox[2]; | |||
GUI_COLOR |
BkColor; | |||
GUI_COLOR |
TextColor; | |||
I16 |
Align; | |||
U8 |
Spacing; | |||
const GUI_BITMAP * |
apBm[4]; | |||
U8 |
NumStates; |
| ||
U8 |
CurrentState; | |||
WM_HMEM |
hpText; | |||
int |
DebugId; |
在WM_CreateWindowAsChild中申请空间,并在此函数中填写WM_Obj部分
在CHECKBOX_CreateEx中调用WIDGET__Init填写WIDGET的其他部分。并在此函数中填写CHECKBOX_Obj的其他部分。
SLIDER_Obj内存图:
GUI_RECT |
Rect |
WM_
Obj
Win;
|
WIDGET
Widget;
|
SLIDER_Obj
|
GUI_RECT |
InvalidRect | |||
WM_CALLBACK*
|
cb= _SLIDER_Callback
| |||
WM_HWIN |
hNextLin; | |||
WM_HWIN |
hParent; | |||
WM_HWIN |
hFirstChild; | |||
WM_HWIN |
hNext; | |||
U16 |
Status; | |||
const WIDGET_EFFECT* |
pEffect |
| ||
I16
|
Id;
| |||
U16 |
State; | |||
GUI_COLOR |
aBkColor[2]; |
| ||
GUI_COLOR |
aColor[2]; | |||
int |
Min, Max, v; | |||
int |
Flags; | |||
int |
NumTicks; | |||
I16 |
Width; | |||
int |
DebugId;
|
在WM_CreateWindowAsChild中申请空间,并在此函数中填写WM_Obj部分
在SLIDER_CreateEx中调用WIDGET__Init填写WIDGET的其他部分。并在此函数中填写SLIDER_Obj的其他部分。
DROPDOWN_Obj内存图:
GUI_RECT |
Rect |
WM_
Obj
Win;
|
WIDGET
Widget;
|
DROPDOWN_Obj
|
GUI_RECT |
InvalidRect | |||
WM_CALLBACK*
|
cb= _DROPDOWN_Callback
| |||
WM_HWIN |
hNextLin; | |||
WM_HWIN |
hParent; | |||
WM_HWIN |
hFirstChild; | |||
WM_HWIN |
hNext; | |||
U16 |
Status; | |||
const WIDGET_EFFECT* |
pEffect |
| ||
I16
|
Id;
| |||
U16 |
State; | |||
I16 |
Sel |
| ||
I16 |
ySizeEx; | |||
I16 |
TextHeight; | |||
U16 |
NumItems; |
GUI_ARRAY
Handles; | ||
WM_HMEM |
haHandle; | |||
GUI_ARRAY_STATE |
InitState; | |||
int, |
NumItems |
WM_SCROLL_STATE ScrollState;
| ||
int |
v | |||
int |
PageSize; | |||
const GUI_FONT GUI_UNI_PTR * |
pFont; |
DROPDOWN_PROPS
Props;
| ||
GUI_COLOR |
aBackColor[3]; | |||
GUI_COLOR |
aTextColor[3]; | |||
I16 |
TextBorderSize; | |||
I16 |
Align; | |||
WM_HWIN |
hListWin; |
| ||
U8 |
Flags; | |||
U16 |
ItemSpacing; | |||
U8 |
ScrollbarWidth; | |||
char |
IsPressed; | |||
int |
DebugId; |
在WM_CreateWindowAsChild中申请空间,并在此函数中填写WM_Obj部分
在LISTBOX_CreateEx中调用WIDGET__Init填写WIDGET的其他部分。并在此函数中填写DROPDOWN_Obj的其他部分。