![]() |
Добро пожаловать, гость ( Вход | Регистрация )
![]() |
-=CHE@TER=- |
![]()
Сообщение
#1
|
Walter Sullivan ![]() ![]() ![]() Группа: Root Admin Сообщений: 1,371 Регистрация: 4-February 08 Пользователь №: 3 Спасибо сказали: 318 раз(а) ![]() |
Delphi programs in API.
На английском. Очень подробно всё описано, плюс есть исходные коды готовых юнитов. Например SmallUtil, в котором есть все частоиспользуемые подпрограммы, и который в размере меньше, чем SysUtils (автор так утверждает - я не проверял). |
![]() ![]() |
-=CHE@TER=- |
![]()
Сообщение
#2
|
Walter Sullivan ![]() ![]() ![]() Группа: Root Admin Сообщений: 1,371 Регистрация: 4-February 08 Пользователь №: 3 Спасибо сказали: 318 раз(а) ![]() |
Нашёл в Delphi 7 охрененный косяк, который вынес мне мозг.
1) Создаём новую программу - пустую форму и вешаем обработчик на событие OnActivate (нам нужно показать окно с некоторой заполненной информацией в ListBox). 2) Кидаем на форму ListBox и вешаем обработчик на событие OnClick. 3) Пишем туда такой код: CODE procedure TForm1.ListBox1Click(Sender: TObject); begin // if Sorted changed in FormActivate you'll see this only with keyboard ShowMessage('OnClick'); end; procedure TForm1.FormActivate(Sender: TObject); var i: integer; begin for i:=1 to 10 do ListBox1.Items.Add(IntToStr(i)); ListBox1.Sorted:=True // <-- bye-bye OnClick, DblClick and mouse events! end; 4) Долбанный стыд - при изменении Sorted (неважно в True или False) внутри OnActivate - OnClick, OnDblClick у ListBox и все прочие события с мышки перестают обрабатываться. Работает только клавиатура... |
![]() ![]() |
Упрощённая версия | Сейчас: 30th April 2025 - 20:55 |