Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Рамка для вырезания рисунка... [D7, WinXP]


Evgeney ©   (2010-07-13 23:47:00) 

На форме имеется компонент image с загруженным рисунком, необходимо вырезать часть определенного размера, для этого надо создать рамку которая бы перемещалась при движении мыши, подскажите куда смотреть или с чего начать, не могу найти как создать рамку... спасибо...


KilkennyCat   (2011-04-28 09:50:00) [1]


>  HF-Trade ©   (28.04.11 09:23) [9]

это не муравьи...


HF-Trade   (2011-04-28 09:23:00) [2]

Var
 CursorRectPoint: TPoint;
Begin
 GetCursorPos(CursorRectPoint);
 With Image1.Canvas do
  Begin
    Pen.Width := 3;
    Pen.Color := clLime;
    Brush.Style := bsClear;
    Rectangle(CursorRectPoint.X, CursorRectPoint.Y , ширина, высота);
 end;

как то так...


Anatoly Podgoretsky   (2011-04-27 15:03:00) [3]


> Leonid Troyanovsky ©   (15.07.10 13:38) [5]

А разве Петя пишет ерунду?


TStranger   (2011-04-27 14:29:00) [4]

Удалено модератором


TStranger   (2011-04-27 14:28:00) [5]

Большое спасибо за пример...часа 2-3 парился, а тут за 2 минуты справился :)


Leonid Troyanovsky   (2010-07-15 13:38:00) [6]


> TStas   (15.07.10 13:24) [4]

>  Трояновский - да, солидный автор.

Спору нет - солидный, конечно :)
Но, речь была про Peter Below.

--
Regards, LVT.


TStas   (2010-07-15 13:24:00) [7]

У меня вчера ссылка не открылась :( А взял я всё из Флёнова. Трояновский - да, солидный автор.


Anatoly Podgoretsky   (2010-07-15 10:03:00) [8]


> TStas   (14.07.10 23:49) [2]

Ты расказываешь текст по ссылке Leonid Troyanovsky ©   (14.07.10 07:47) [1]
Прекрасный, надежный пример, как и сам автор, он ерунды не пишет.


TStas   (2010-07-14 23:49:00) [9]

Таскаемая рамка делается просто: при щелчке мышкой выставляется флажок, что теперь мы рисуем рамку при перемещении мыши. Создаём коррдинаты старой рамки и новой, а рисуем карандашок у которого pmNotXor. При этом при повторном перерисовывании рамка стирается. ПРи кажом перемещении мыши, если есть флаг, что рамку надо рисовать, сначала рисуем её повтороно со старыми координатами, от чего старая рамка стирается, потом с новыми, отчего рисуется новая, а потом старые координаты делаем новыми. Получается во-первых, вегда отрисованная рамка, а, во-вторых, координаты оной рамки, то есть её прямоугольник, что и требовалось.


Leonid Troyanovsky   (2010-07-14 07:47:00) [10]


> Evgeney   (13.07.10 23:47)  

> надо создать рамку которая бы перемещалась при движении
> мыши, подскажите куда смотреть или с чего начать, не могу
> найти как создать рамку...

http://groups.google.com/group/borland.public.delphi.vcl.components.writing/msg/b0203b9ea79016d7?hl=ru

--
Regards, LVT.


Наверх

Титульная страница Поиск, карта сайта Написать письмо