Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.11.07;
Скачать: CL | DM;

Вниз

DrawFocusRect: ПОЧЕМУ???   Найти похожие ветки 

 
LongIsland ©   (2002-10-28 20:06) [0]

Вот такая проблема: чтобы выделить часть рисунка в TImage использую DrawFocusRect. НО! Когда веду указатель мыши из левого верхнего угла в правый нижний и из правого верхнего в левый нижний, то все ОК. Если веду снизу вверх медленно, то тоже все ОК. А если в последнем случае несколько быстрее веду указатель мыши несколько быстрее, то прямоугольник срывается и исчезает:-( WHY???

ЗЫ: Код приводится...

var
Form1: TForm1;
dr: Boolean;
Rec: TRect;
X0, Y0: Integer;

procedure TForm1.Image1MouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
begin
dr:=true;
setCapture(handle);
X0:=x; Y0:=y;
Rec.Left:=x0;
rec.Top:=y0;
rec.BottomRight:=rec.TopLeft;
canvas.DrawFocusRect(Rec);
end;

procedure TForm1.Image1MouseMove(Sender: TObject; Shift: TShiftState; X,
Y: Integer);
begin
if dr then
begin
canvas.DrawFocusRect(rec);
if (x>=Rec.Left) and (y>=Rec.Top) then
begin
rec.Right:=x;
rec.Bottom:=y;
end
else
if (x<Rec.Left) then
begin
if y>=Rec.Top then
begin
Rec.Right:=X0;
Rec.Left:=x;
Rec.Bottom:=y;
end
else
begin
Rec.Right:=X0;
Rec.Left:=x;
Rec.Top:=y;
Rec.Bottom:=Y0;
end;
end
else
begin
Rec.Right:=x;
Rec.Top:=y;
Rec.Bottom:=Y0;
end;

canvas.DrawFocusRect(rec);
end;
end;

procedure TForm1.Image1MouseUp(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
begin
if dr then
begin
releaseCapture;
dr:=false;
//invalidate;
end;
end;


 
LongIsland ©   (2002-10-28 21:40) [1]

Ситуация усугубляется... Переопределение OnMouseMove на WM_MOUSEMOVE (ну, вы понимаете о чем я :-)) ничего не дало:-(
Может кто все-таки ошибку видит?..


 
LongIsland ©   (2002-10-29 09:23) [2]

Неужели никто не в силах помочь:-(



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

Текущий архив: 2002.11.07;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.016 c
14-21750
Ghost-Kasper
2002-10-18 14:27
2002.11.07
Организация Базы данных используя Excel


6-21704
der
2002-09-09 17:29
2002.11.07
Где скачать ICS для DELPHI 5


7-21825
Dj Karies
2002-09-04 10:51
2002.11.07
Потоки


6-21710
delpher_gray
2002-09-06 11:14
2002.11.07
Передача файлов


14-21795
^Sanya
2002-10-19 00:15
2002.11.07
Почемураз работчики приложений Delphi обходят стороной???!!!!