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

Вниз

DrawFocusRect   Найти похожие ветки 

 
>|<   (2012-03-17 14:23) [0]

Здравствуйте!
Работает ли данная функция в Windows 7?

Привожу код, который не работает(компилировал в Delphi 7)

procedure TfrmParseImages.imgBlankMouseMove(Sender: TObject;
 Shift: TShiftState; X, Y: Integer);

begin
  if Capturing then
 begin
   DrawFocusRect(imgBlank.Canvas.Handle,MakeRect(StartPlace,EndPlace));
   EndPlace.x := X;
   EndPlace.y := Y;
   DrawFocusRect(imgBlank.Canvas.Handle,MakeRect(StartPlace,EndPlace));
 end;

 if opdScan.FileName = "" then
   Exit;

 sbMain.Panels[3].Text := IntToStr(x) + "," + IntToStr(y);
 sbMain.Panels[5].Text := IntToStr(Round(x / imgBlank.Width * 10000)) + "," + IntToStr(Round(y / imgBlank.Height * 10000));
 sbMain.Panels[6].Text := ColorToString(imgBlank.Canvas.Pixels[x, y])
end;
procedure TfrmParseImages.imgBlankMouseDown(Sender: TObject;
 Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
begin
  if Captured then
   DrawFocusRect(imgBlank.Canvas.Handle,MakeRect(StartPlace, EndPlace));
 StartPlace.x := X;
 StartPlace.y := Y;
 EndPlace.x := X;
 EndPlace.y := Y;
// DrawFocusRect(imgBlank.Canvas.Handle, MakeRect(StartPlace, EndPlace));
 Capturing := true;
 Captured := true;
end;

procedure TfrmParseImages.imgBlankMouseUp(Sender: TObject;
 Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
begin
 Capturing := false;
end;


 
>|<   (2012-03-17 15:03) [1]

Похоже я использую не ту канву, на которой пытаюсь рисовать...
Если использовать канву формы, на которой лежит Image, то FocusRect рисуется, а если использовать канву Image.Picture.Bitmap.Canvas , то прямоугольник не рисуется.

Если на форме лежит ScrollBox и в нем Image, то какую канву нужно использовать, чтобы увидеть FocusRect?


 
begin...end ©   (2012-03-17 15:06) [2]

> >|<   (17.03.12 14:23)
> DrawFocusRect(imgBlank.Canvas.Handle,MakeRect(StartPlace, EndPlace))

(Sender as TImage).Canvas.DrawFocusRect(Rect(StartPlace, EndPlace)) - так тоже не работает?


 
>|<   (2012-03-17 15:23) [3]


> (Sender as TImage).Canvas.DrawFocusRect(Rect(StartPlace,
>  EndPlace)) - так тоже не работает?

Спасибо, работает!



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

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

Наверх




Память: 0.47 MB
Время: 0.071 c
2-1340451890
Кос
2012-06-23 15:44
2013.03.22
Сортировка в ComboBox


2-1335171988
andrewtitoff
2012-04-23 13:06
2013.03.22
IdHTTP и Proxy


15-1324204292
0K
2011-12-18 14:31
2013.03.22
Что ждет в 30 (кризис возраста и пр.)?


15-1347565047
Artem
2012-09-13 23:37
2013.03.22
Сегодня выбрал тему дипломный работы.


15-1353946630
Разведка
2012-11-26 20:17
2013.03.22
Кто знает как использовать DCPCrypt библиотеку?