![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
ComboBox и OnChar
Денис © (2005-03-02 06:52:00)Почему обработчик OnChar для ComboBox не сохраняет замененные символы? Вот простой пример:
Var form,combo:PControl;
procedure ComboOnChar (Dummy:Pointer; Sender: PControl; var Key: Char; Shift: DWORD );
begin
Key:=#0;
end;
begin
form:=NewForm(Applet,'');
Combo:=NewComboBox(form,[]);
Combo.OnChar:=TOnChar(MakeMethod(nil,@ComboOnChar));
Run(form);
end.
Если вместо ComboBox использовать EditBox то все нормально, ввод с клавиатуры фильтруется.
ECM (2005-03-02 10:40:00) [1]Для желающих. Тут:
http://kolibdb.100free.com/kolmck205plus.zip
лежит upd-файл исправляющий эту ошибку и некоторые другие,
которые были замечены мной после выхода версии 2.05.
Список исправлений - Changes.txt в архиве.
ECM (2005-03-02 10:11:00) [2]Да, уж... в код окнонной функции ComboBox-а вкралась опечатка:
(исправления выделены жирным шрифтом)
function WndFuncCombo( W: HWnd; Msg: Cardinal; wParam, lParam: Integer )
: Integer; stdcall;
...
//********************************************************** Added By M.Gerasimov
//*
PrevProc:=Pointer(GetProp( W, ID_PREVPROC ));
if PrevProc <> Nil then
Result := CallWindowProc( PrevProc , W, MsgStruct.message, MsgStruct.wParam, MsgStruct.lParam) //Msg, wParam, lParam )
else
Result:=0;
//*
//********************************************************** Added By M.Gerasimov