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

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

ВЫДИЛЕНИЕ [D6, WinXP]


frum ©   (2002-08-21 10:38:00) 

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


BOA_KAA   (2002-08-21 12:21:00) [1]

> ArhAngel2 © (21.08.02 11:03)

Прекрасный способ рисования не только на форме, но и на TImage и прочей VCL-банде, но не полный. Не обрабатывается случай, когда конечное положение мыши (при MouseUp и MouseMove) слева или выше начального.


evgeg   (2002-08-21 12:11:00) [2]

в общем
перЕдвижении
обвОдился
выдЕления
мЫши

Вы совсем не уважаете людей, которых просите помочь вам
с вашим вопросом.


Игорь Шевченко   (2002-08-21 12:11:00) [3]

Русский выучить :-)


ArhAngel2   (2002-08-21 11:03:00) [4]

Необходимо обработать события onMouseDown onMouseMove и onMouseUp
var
dr: boolean;
Rec: Trect;

procedure TForm1.FormMouseDown(Sender: TObject; Button:
TMouseButton;
Shift: TShiftState; X, Y: Integer);
begin
dr:=true;
setCapture(handle); //Получаем сообщения мыши, даже если она за пределами формы
Rec.Left:=x;
rec.Top:=y;
rec.BottomRight:=rec.TopLeft;
canvas.DrawFocusRect(Rec);
end;

procedure TForm1.FormMouseMove(Sender: TObject; Shift: TShiftState; X,
Y: Integer);
begin
if dr then
begin
canvas.DrawFocusRect(rec);
rec.Right:=x;
rec.Bottom:=y;
canvas.DrawFocusRect(rec);
end;
end;

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


I_A   (2002-08-21 10:45:00) [5]

DrawFocusRect


lenin   (2002-08-21 10:44:00) [6]

Рисовать этот контур на канве.


Наверх

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