IPB
ЛогинПароль:

> ВНИМАНИЕ!

Прежде чем задать вопрос, смотрите FAQ.
Рекомендуем загрузить DRKB.

Наладить общение поможет, если вы подпишитесь по почте на новые темы в этом форуме.

> Рисование в Delphi, С помощью мыши
сообщение
Сообщение #1


Пионер
**

Группа: Пользователи
Сообщений: 79
Пол: Мужской

Репутация: -  0  +


Надо нарисовать элипс. Самое простое что пришло в голову это поместить на форму PaintBox и написать:

Код

var
  Form1: TForm1;
  MouseButtonDown: Boolean= false;
  StartX, StartY: Integer;

implementation


procedure TForm1.PaintBox1MouseDown(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
begin
MouseButtonDown:=true;
StartX:=X;
StartY:=Y;
end;

procedure TForm1.PaintBox1MouseMove(Sender: TObject; Shift: TShiftState; X,
  Y: Integer);
begin
Form1.Caption:=Format ('Координаты: x=%d, y=%d ' , [X, Y]); // Координаты в заголовке.

if  MouseButtonDown=true then
PaintBox1.Canvas.Ellipse(StartX, Starty, X, Y);

end;

procedure TForm1.PaintBox1MouseUp(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
begin
MouseButtonDown:=false;
end;



Но от элипса остается след, если нажатую мышку двигать назад. Как избавиться от этого следа?

Сообщение отредактировано: Shmaniche -
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
 
 Ответить  Открыть новую тему 
Ответов
сообщение
Сообщение #2


Бывалый
***

Группа: Пользователи
Сообщений: 155
Пол: Мужской

Репутация: -  0  +


Why not settling on games that is fun and at the same time your earning. Well it'll make suspense because the game is well but dude just try it and it gave me hope while pandemic is real rn. The Best 5 Gambling Dens In The World
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

Сообщений в этой теме
Shmaniche   Рисование в Delphi   9.12.2012 21:44
TarasBer   Стирать след, оставленный на предыдущем кадре.   10.12.2012 0:34
Shmaniche   Стирать след, оставленный на предыдущем кадре. …   10.12.2012 9:36
Shmaniche   Дорабоотал прежний код, чтобы можно было рисовать …   10.12.2012 12:22
TarasBer   > if (MouseButtonDown=true) and (Rectangle=true…   10.12.2012 13:26
Shmaniche   TarasBer Не согласен, что условия выписаны напра…   10.12.2012 14:34
TarasBer   ответ неверный рисовать надо только тогда, когда к…   10.12.2012 14:52
Shmaniche   TaraBer Так, похоже разрулил :) : if (MouseB…   10.12.2012 15:03
TarasBer   > Так, похоже разрулил Теперь верно. > В…   10.12.2012 15:18
Shmaniche   Лови событие OnPaint у формы и в нём рисуй фигуру…   10.12.2012 17:10
TarasBer   А, тебе не нравится, что остаётся только последняя…   10.12.2012 17:22
Shmaniche   Ладно, с перерисовкой как-нибудь потом разберусь. …   10.12.2012 17:38
Shmaniche   Ха-ха! Методом тыка нашел режим карандаша, кот…   10.12.2012 20:44
Shmaniche   Задумал добавить возможность рисовать мышкой прост…   10.12.2012 22:51
TarasBer   Да так же - брать и явно стирать.   11.12.2012 13:37
Shmaniche   TaraBer Можешь продемонстрировать? :)   11.12.2012 13:52
TarasBer   Да так же, как ты эллипсы явно стирал. Что такое x…   11.12.2012 14:26
Shmaniche   Да так же, как ты эллипсы явно стирал. Элипсы я…   11.12.2012 16:03
TarasBer   Эллипс ты стираешь не выбором режима, а именно тем…   11.12.2012 16:04
Shmaniche   Эллипс ты стираешь не выбором режима, а именно те…   11.12.2012 16:16
TarasBer   Похоже понял! :) Всё наоборот. Ты повторно р…   11.12.2012 18:05
Shmaniche   Поразмыслив придумал как из эллипса сделать окружн…   21.12.2012 19:56
nishaknapp   Why not settling on games that is fun and at the s…   16.01.2023 7:31


 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 





- Текстовая версия 13.05.2024 18:51
500Gb HDD, 6Gb RAM, 2 Cores, 7 EUR в месяц — такие хостинги правда бывают
Связь с администрацией: bu_gen в домене octagram.name