Форум программистов, компьютерный форум, киберфорум
Delphi для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.83/6: Рейтинг темы: голосов - 6, средняя оценка - 4.83
0 / 0 / 0
Регистрация: 28.10.2019
Сообщений: 15

Рисование

30.10.2019, 07:23. Показов 1278. Ответов 1
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Реализовать рисование так, чтобы по нажатию мыши (щелкая левой кнопкой и удерживая её при перемещении мыши по горизонтали и вертикали) рисовалась окружность произвольно го радиуса, а щелкая правой кнопкой мыши и удерживая её, можно было нарисовать эллипс любого размера и цвета. Помогите пожалуйста с программным кодом. Очень нужно.
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
30.10.2019, 07:23
Ответы с готовыми решениями:

Рисование
Есть код : type TPoint = record Y:array of double; //массив Y Z:array of double; //массив Z h:double; // значения...

Рисование
Можно ли рисовать на рамке чужого окна ?

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

1
Почетный модератор
 Аватар для Puporev
64315 / 47611 / 32743
Регистрация: 18.05.2008
Сообщений: 115,167
30.10.2019, 09:28
Лучший ответ Сообщение было отмечено SatanaXIII как решение

Решение

Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
var
  Form1: TForm1;
  x1,y1,x2,y2:integer;
 
implementation
 
{$R *.dfm}
uses Math; //подключим модуль для получения функции Max(x,y)
//выбор цвета линий
procedure TForm1.PenColor1Click(Sender: TObject);
begin
 if ColorDialog1.Execute then
 Canvas.Pen.Color:=ColorDialog1.Color
end;
///выбор цвета заливки
procedure TForm1.BrushColor1Click(Sender: TObject);
begin
 if ColorDialog1.Execute then
 Canvas.Brush.Color:=ColorDialog1.Color
end;
 
procedure TForm1.FormMouseDown(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
begin
x1:=x;
y1:=y;
end;
 
procedure TForm1.FormMouseUp(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
var xc,yc,r:integer;
begin
x2:=x;
y2:=y;
Canvas.Brush.Style:=bsClear;
if Button=mbRight then //правая кнопка мыши
Canvas.Ellipse(x1,y1,x2,y2);
if Button=mbLeft then //левая
  begin
  //координаты центра окружности
   xc:=(x2+x1)div 2;
   yc:=(y2+y1)div 2;
   //радиус
   r:=max(abs(xc-x1),abs(yc-y1));
   Canvas.Ellipse(xc-r,yc-r,xc+r,yc+r);
  end;
end;
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
30.10.2019, 09:28
Помогаю со студенческими работами здесь

Рисование изображений.
мне нужен MoveTo, Pollogon(point)замкнутый-заданного массивом координат point, и незамкнутый многоугольник, как это сделать? ни фига не...

Рисование графиков
В общем, мне нужно со строки(edit1) считать формулу например sin(x), а далее просто подставить х любой, посчитать и вывести, но когда я...

Рисование в Delphi
На форме при нажатие кнопки должен выводится этот чертеж размеры берутся из edit.Как можно это реализовать?

рисование дуги
Не могу понять, как можно построить дугу в ооп....

Рисование Делфи
помогите решить задачу: создать кривую 3-го порядка гипоцеклоида для значения к=2.1


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Новые блоги и статьи
Чистый C и C++ в Qt Creator: ставим среду без VPN и настраиваем MinGW/CMake, без фреймворка Qt
8Observer8 05.04.2026
Среду разработки Qt Creator можно установить без фреймворка Qt. Есть отдельный репозиторий для этой среды: https:/ / github. com/ qt-creator/ qt-creator, где можно скачать установщик, на вкладке Releases:. . .
AkelPad-скрипты, структуры, и немного лирики..
testuser2 05.04.2026
Такая программа, как AkelPad существует уже давно, и также давно существуют скрипты под нее. Тем не менее, прога живет, периодически что-то не спеша дополняется, улучшается. Что меня в первую очередь. . .
Отображение реквизитов в документе по условию и контроль их заполнения
Maks 04.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеСпецтехники", разработанного в конфигурации КА2. Данный документ берёт данные из другого нетипового документа. . .
Фото всей Земли с борта корабля Orion миссии Artemis II
kumehtar 04.04.2026
Это первое подобное фото сделанное человеком за 50 лет. Снимок называют новым вариантом легендарной фотографии «The Blue Marble» 1972 года, сделанной с борта корабля «Аполлон-17». Новое фото. . .
Вывод диалогового окна перед закрытием, если документ не проведён
Maks 04.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: реализовать программный контроль на предмет проведения документа. . .
Программный контроль заполнения реквизитов табличной части документа
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: 1. Реализовать контроль заполнения реквизита. . .
wmic не является внутренней или внешней командой
Maks 02.04.2026
Решение: DISM / Online / Add-Capability / CapabilityName:WMIC~~~~ Отсюда: https:/ / winitpro. ru/ index. php/ 2025/ 02/ 14/ komanda-wmic-ne-naydena/
Программная установка даты и запрет ее изменения
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: при создании документов установить период списания автоматически. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru