ucgui390部分控件之内存分布图

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_CreateWindowAsChildhClient分配空间。


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的其他部分。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值