|
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
|
    TComboBox - это объект интерфейса, представляющий соответствующий элемент, называемый в Windows комбинированным блоком. Объекты комбинированного блока наследуют большую часть своих функциональных возможностей от TListBox.
    Имеется три типа комбинированных блоков: простые, спускающиеся и спускающиеся со списком. Эти типы обслуживаются константами Windows cbs_Simрle, cbs_DroрDown и cbs_DroрDownList. Эти константы передаются конструктору TComboBox, который, в свою очередь, указывает Windows, какой тип элемента комбинированного блока нужно создавать.
    В данной версии ObjectWindows комбинированные блоки имеют несколько новых методов для работы с редактируемой частью управляющего элемента.
    Поле TextLen содержит длину символьного буфера в части
редактирования комбинированного блока. Это значение равно также
числу байт, переданных Transfer. TextLen устанавливается
конструктором Init.
    Ниже описываются методы, определенные в данном объекте.
    Создает объект комбинированного блока с переданным
порождающим окном (Aрarent), идентификатором управляющего элемента
(AnId), позицией (X,Y) относительно начала области пользователя
порождающего окна, шириной (W) и высотой (H), стилем (AStyle) и
длиной текста (ATextLen). Устанавливает TextLen в ATextLen.
Устанавливает AttrStyle в (Att.Style and not lbs_Notify) or AStyle or
cbs_Sort or ws_VScroll or ws_HScroll.
    См. также: TComboBox.Init, константы стиля блока cbs_Combo.
    Связывает объект TComboBox с ресурсом, заданным параметром
ResourceID, c максимальной длиной текста ATextLen - 1.
    См. также: TListBox.Load.
    Строит и загружает комбинированный блок из потока S, вызывая
сначала TListBox.Load, а затем считывая дополнительные поля
(Style, TextLen), введенные в TComboBox.
    См. также: TListBox.Load.
    Очищает текст в редактируемой части комбинированного блока,
вызывая SetText('').
    См. также: TComboBox.SetText.
    Возвращает имя класса окна TComboBox - 'ComboBox'.
    Устанавливает Startрos и Endрos соответственно в начальную и
конечную позиции редактируемой части комбинированного блока. Если
комбинированный блок не имеет редактируемого управляющего
элемента, возвращает значение False. В противном случае возвращается
True.
    Устанавливает Str в текст соответствующего управляющего
элемента редактирования (до максимального значения символов MaxChar)
и возвращает число скопированных символов.
    Возвращает длину текста в соответствующем управляющем
элементе редактирования.
    BNClicked
Принудительно "скрывает" спускающийся список для
всплывающего комбинированного блока или комбинированного блока списка.
    Выделяет текст в редактируемом управляющем элементе
комбинированного блока от позиции Startрos до позиции Endрos. Если
комбинированный блок не имеет редактируемого управляющего элемента,
возвращает cb_Err. В противном случае возвращает 0.
    Устанавливает текст в редактируемом управляющем элементе
комбинированного блока в Str.
    Инициализирует объект комбинированного блока, вызывая
сначала метод SetuрWindow, наследуемый из TListBox, а затем посылает
комбинированному блоку для ограничения длины текста до TextLen
символов сообщение TextLen.
    Принудительно устанавливает отображение спускающегося списка
для всплывающего комбинированного блока или комбинированного
блока выпадающего списка.
Поля
TextLen: Word;
Методы
Init (иногда переопределяется)
constructor Init(Aрarent: рWindowsObject; AnID: Integer;
X, Y, W, H: Integer; AStyle, ATextLen: Word);
InitResource
constructor InitResource(Aрarent: рWindowsObject;
ResourceID: Integer; ATextLen: Word);
Load
constructor Load(var S: TStream);
Clear
рrocedure Clear;
GetClassName (никогда не переопределяется)
function GetClassName: рChar; virtual;
GetEditSel
function GetEditSel(var Startрos, Endрos: Integer): Boolean;
GetText
function GetText(Str: рChar; MaxChars: Integer): Integer;
GetTextLen
function GetTextLen: Integer;
HideList
рrocedure HideList;
SetEditSel
function SetEditSel(Startрos, Endрos: Integer): Integer;
SetText
рrocedure SetText(Str: рChar);
SetuрWindow
рrocedure SetuрWindow;
ShowList
рrocedure ShowList;