Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "KOL";
Текущий архив: 2006.11.19;
Скачать: [xml.tar.bz2];

Вниз

KOLButton.OnEnter & OnLeave ???   Найти похожие ветки 

 
ECM ©   (2006-02-06 19:03) [0]

Столкнулся тут с упущением (?!!! как раньше не замечал - не пойму)
Не работают нотификации OnEnter и OnLeave для TKOLButton,TKOLCheckBox
и TKOLBitBtn. И OnMouseDblClk для TKOLButton и TKOLCheckbox.
Как оказалось,в функциях New для всех них упущен (?!) флаг
BS_NOTIFY без которого, события BN_SETFOCUS,BN_KILLFOCUS
(а для не BS_OWNERDRAW и) BN_DBLCLK, не генерируются системой.
Тем более обидно, что обработка этих событий уже давно встроена
в KOL. (Radiobox - один из "рода Button-ов" отрабатывает их
успешно)
После добавления оного флага во  все функции - всё стало на место.
Каких-то доп. багов пока не обнаружено...

{$IFDEF ASM_VERSION}
function NewBitBtn( AParent: PControl; const Caption: String;
...
       MOV      ECX, WS_VISIBLE or WS_CHILD or WS_TABSTOP or BS_OWNERDRAW
or BS_NOTIFY
       CALL     _NewControl
...
{$ELSE ASM_VERSION} //Pascal
function NewBitBtn( AParent: PControl; const Caption: String;
...
 f := WS_VISIBLE or WS_CHILD or BS_OWNERDRAW or WS_TABSTOP or BS_NOTIFY;  
Result := _NewControl( AParent, "BUTTON", f, False, @ButtonActions );

{$IFDEF _ASM_VERSION}
function NewButton( AParent: PControl; const Caption: String ): PControl;
...
       MOV      ECX, WS_VISIBLE or WS_CHILD or BS_PUSHLIKE or WS_TABSTOP
or BS_NOTIFY
       CALL     _NewControl
...
{$ELSE ASM_VERSION} //Pascal
function NewButton( AParent: PControl; const Caption: String ): PControl;
begin
 Result := _NewControl( AParent, "BUTTON",
           WS_VISIBLE or WS_CHILD or BS_NOTIFY or
           BS_PUSHLIKE or WS_TABSTOP, False, @ButtonActions );

{$IFDEF ASM_VERSION}
function NewCheckbox( AParent: PControl; const Caption: String ): PControl;
...
       MOV      [EAX].TControl.fStyle, WS_VISIBLE or WS_CHILD or
BS_AUTOCHECKBOX or BS_NOTIFY or WS_TABSTOP
...
{$ELSE ASM_VERSION} //Pascal
function NewCheckbox( AParent: PControl; const Caption: String ): PControl;
...
 Result.fStyle := WS_VISIBLE or WS_CHILD or BS_NOTIFY or
           BS_AUTOCHECKBOX or WS_TABSTOP;

Размер кода сие - не увеличивает...:)


 
Vladimir Kladov   (2006-02-06 21:15) [1]

учту, утечку и уникож победил, оьновлние сегодня не успеваю оформить, завтра теперь.



Страницы: 1 вся ветка

Форум: "KOL";
Текущий архив: 2006.11.19;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.45 MB
Время: 0.042 c
1-1159992500
Альберт
2006-10-05 00:08
2006.11.19
TWebBrowser с собственными настройками


10-1125562560
AlexeyMir
2005-09-01 12:16
2006.11.19
Использование ActiveX


1-1160321075
flaxe
2006-10-08 19:24
2006.11.19
Встраивание в другие программы


2-1162226455
Golik
2006-10-30 19:40
2006.11.19
где ошибка ?


2-1162541026
viper7
2006-11-03 11:03
2006.11.19
update TIBQuery





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский