-
Проблема таймер "ловит" не все клики левой кнопки мыши над объектом.
пропускает ...
Интервал тайиера 50мс
procedure TfmLock.Timer_WorkTimer(Sender: TObject);
var p: TPoint;
begin
GetCursorPos(p);
// определяем что мышь над объектом:
if ((p.x > fmLock.Left + Zona_1.Left) and (p.x < fmLock.Left + Zona_1.Left + 50) and
(p.y > fmLock.Top + Zona_1.Top) and (p.y < fmLock.Top + Zona_1.Top+ 50)) then
Mouse_Sb_1 := True else Mouse_Sb_1 := False;
if ((Mouse_Sb_1 = True) and (Mouse_Left_1 = True)) then begin
Brush.Style := bsSolid;
Brush.Color := clWhite;
.. рисуем на канве
...
end;
procedure TfmLock.Zona_1MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
begin
if Button = mbLeft then Mouse_Left_1 := True;
if Button = mbRight then Mouse_Right_1 := True;
if Button = mbMiddle then Mouse_Middle_1 := True;
end;
procedure TfmLock.Zona_1MouseUp(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
begin
if Button = mbLeft then Mouse_Left_1 := False;
if Button = mbRight then Mouse_Right_1 := False;
if Button = mbMiddle then Mouse_Middle_1 := False;
end;
-
и что же это такое ты делаешь'то так ректально?
-
Что-то непонятно, за каким лешим нужен этот таймер ...
-
таймер обрабатывает результаты подсчетов и рисует на канве анимацию
-
а ты паладин,- сам ректальный...
-
А зачем тогда нужны обработчики мышиных кнопкодвижений ?
-
по кликам перерисовывается канва. (Я аниматор по специальности и просто вынужден писать какой то код для своих демонстраций)
-
> tetris (09.04.08 13:28) [4]
Если ты возражаешь против ректальности своей логики, то покажи место в коде обработчика таймера, где происходит эта самая "ловля кликов")
В упор не вижу ничего похожего)
-
> по кликам перерисовывается канва
В упор не вижу никокй работы с канвой в обработчиках мышиных кнопкодвижений..
-
Удалено модератором
Примечание: Скатерью дорога
-
:)))
-
Красавец и ректальные чудовищи))
-
> Mouse_Sb_1 := True else Mouse_Sb_1 := False;
if True Then
True
else
False
Прикольно :)
-
> [9] tetris (09.04.08 13:38)
Таймер, он на то и таймер ...он тикает.... и работа его ведется в момент тиков, так сказать, хоть ты и выставил малый интервал, но все равно этого не достаточно....
Ты лучше пересмотри свой алгоритм работы чего-то там с канвой и кликами.... или подробнее вопрос задай...
И еще.... когда занимаешься не своей работой, то получится однозначно лажа.... см [12] например )
-
> tetris (09.04.08 13:28) [4]
ты хоть осознаешь через какую $адницу ты реализовал обычный OnClick и OnMouseMove...
LMD
-
> [14] Palladin © (09.04.08 13:49)
> обычный OnClick и OnMouseMove...
Помоему атору достаточно только второго :)
-
> атору
*автору
Долбаная клава(
-
> {RASkov} © (09.04.08 13:51) [15]
ну вообще-то да...
ну на всякий случай, вдруг он и про первый не знает.... )
-
> [17] Palladin © (09.04.08 13:53)
> вдруг он и про первый не знает....
И не узнает.... Он уже наверное на другом, "более людском" форуме, "зажигает" :)
-
Он уже на курорте