|  Рисование в Delphi, С помощью мыши | 
 ВНИМАНИЕ!
 ВНИМАНИЕ!Прежде чем задать  вопрос, смотрите FAQ.
Рекомендуем загрузить DRKB.
|   | 
|  Рисование в Delphi, С помощью мыши | 
| TarasBer |  11.12.2012 14:05 
				 Сообщение
					#21				
			 | 
|  Злостный любитель      Группа: Пользователи Сообщений: 1 755 Пол: Мужской Репутация:  62    | Похоже понял!  Всё наоборот. Ты повторно рисуешь элемент на старом месте (стирая его) (повторно - потому что ты его уже нарисовал на этом самом месте в предыдущем кадре), потом меняешь положение, потом рисуешь на новом. Но код вроде правильный. Сообщение отредактировано: TarasBer - 11.12.2012 14:06 -------------------- | 
| Shmaniche |    21.12.2012 15:56 
				 Сообщение
					#22				
			 | 
| Пионер   Группа: Пользователи Сообщений: 79 Пол: Мужской Репутация:  0    | Поразмыслив придумал как из эллипса сделать окружность: Код if (Button=mbLeft) // Если нажата левая клавиша мыши... then Circle:=true // то рисуем окружность else Circle:=false; // иначе ничего не рисуем. ... if (MouseButtonDown) and (Circle) then // Если нажата клавиша мыши, и Circle=true, то... begin Canvas.Ellipse(StartX, StartY, EndX, EndY); EndX:=X; EndY:=Y; // Фиксируем конечные координаты... if ((X<StartX) and (Y<StartY)) // Если X и Y меньше точки откуда рисуем... or ((X>StartX) and (Y>StartY)) // или X и Y больше точки откуда рисуем,... then EndX:=EndY-StartY+StartX // тогда рисуем окружность влево вверх и вправо вниз. else EndY:=StartX+StartY-EndX; // Иначе рисуем окружность влево вниз и вправо верх. Canvas.Ellipse(StartX, StartY, EndX, EndY); // и фигуру. end;  Сообщение отредактировано: Shmaniche - 21.12.2012 15:56 | 
|   | 
|   | Текстовая версия | 31.10.2025 4:50 |