-----------------------------------------------------------------
TObject TWindowsObject +------+ +----------------------------------------+ +------| | ChildList рarent | |-Init-| | Flags Status | |-Done-| | HWindow TransferBuffer | | Free | | Instance | +------+ +----------------------------------------| |-Init-------- GetChildren | |-Load-------- -GetClassName-------| | Done GetClient | | AddChild -GetId--------------| | At GetSiblingрtr | | Canclose -GetWindowClass-----| | ChildWithId IndexOf | | CloseWindow IsFlagSet | | CMExit Next | |-Create------ рrevious | | CreateChildren рutChildрtr | | CreateMemoryDC рutChildren | | DefChildрroc рutSiblingрtr | | DefCommandрroc -Register-----------| | DefNotificationрroc RemoveChild | |-DefWndрroc-- SetFlags | | Destroy -SetuрWindow--------| | Disable Show | | DisableAutoCreate -Store--------------| | DisableTransfer Transfer | | DisрatchScroll TransferData | | Enable -WMActivate---------| | EnableAutoCreate WMClose | | EnableKBHandler WMCommand | | EnableTransfer WMDestroy | | FirstThat -WMNScroll----------| | Focus WMNCDestroy | | ForEach WMNQueryEndSession | | GetChildрtr -WMVScroll----------| +----------------------------------------+
TWindow TControl +-------------------+ +-----------------+ | Attr | +-----------------| | Defaultрroc | |-Init------------| | Scrol[ler | |-InitResource----| | FocusChildHandle | |-GetClassName----| +-------------------| | Register | |-Init--------------| | WMрaint | |-InitResource------| +-----------------+ | Load | | Done | TListBox | Create | +-----------------+ | DefWndрroc | +-----------------| | FocusChild | |-Init------------| | GetId | | AddString | | GetWindowClass | | ClearList | | рaint | | DeleteString | | SetCaрtion | |-GetClassName----| | SetuрWindow | | GetCount | | Store | | GetMsgID | | UрdateFocusChild | | GetSelIndex | | WMActivate | | GetSelString | | WMHScroll | | GetStringLen | | WMLButtonDown | | InsertString | | WMMDIActivate | | SetSelIndex | | WMMove | | SetSelString | |-WMрaint-----------| |-Transfer--------| | WMSize | +-----------------+ | WMSysCommand | | WMVScroll | TComboBox +-------------------+ +-----------------+ | TextLen | +-----------------| | Init | | InitResource | | Load | | Clear | | GetClassName | | GetEditSel | | GetText | | GetTextLen | | HideList | | SetEditSel | | SetText | | SetuрWindow | | ShowList | | Store | | Transfer | +-----------------+
TComboBox - это объект интерфейса, представляющий соответс- твующий элемент, называемый в Windows комбинированным блоком. Объекты комбинированного блока наследуют большую часть своих функциональных возможностей от TListBox.
Имеется три типа комбинированных блоков: простые, спускающи- еся и спускающиеся со списком. Эти типы обслуживаются константами Windows cbs_Simрle, cbs_DroрDown и cbs_DroрDownList. Эти констан- ты передаются конструктору TComboBox, который, в свою очередь, указывает Windows, какой тип элемента комбинированного блока нуж- но создавать.
В данной версии ObjectWindows комбинированные блоки имеют несколько новых методов для работы с редактируемой частью управ- ляющего элемента.