![]() |
|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
![]() Привет.
На досуге делаю пейнт на делфи7) и столкнулся с проблемкой самый простой инструмент Карандаш: Код:
procedure TMainForm.Image1MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); begin MDown := True; end; procedure TMainForm.Image1MouseMove(Sender: TObject; Shift: TShiftState; X,Y: Integer); begin if MDown then Image1.Canvas.Pixels[x, y] := PenColor; end; procedure TMainForm.Image1MouseMove(Sender: TObject; Shift: TShiftState; X,Y: Integer); begin if MDown then Image1.Canvas.Pixels[x, y] := PenColor; MDown := False; end; Но при быстром движении мышки, рисуюца отдельные точки, но не линия В то время как в ms paint'e карандаш всегда без разрывов Стало быть событие OnMouseMove вызываеца не так часто. Если переписать все это через Win API будет нужный результат? Или можно повысить вызовы OnMouseMove как-то |