Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 27.10.2014, 14:58   #51
Аника Янковская
Пользователь
 
Регистрация: 23.10.2014
Сообщений: 58
По умолчанию

Я пробывала, но чего-то не получается, и вообще ничего не рисует.

Я писала так:
Код:
procedure TForm2.MouseUp(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
begin
if Button = mbLeft then
begin
 BeginPath(Canvas.Handle);
Image1.Canvas.LineTo(X,Y);
Image1.Canvas.MoveTo(X,Y);
end;
if Button = mbRight then
 EndPath(Canvas.Handle);
end;
end.
Но тогда получается, то что на картинке выше.

Последний раз редактировалось Stilet; 29.10.2014 в 21:21.
Аника Янковская вне форума Ответить с цитированием
Старый 27.10.2014, 15:33   #52
Foreseen
Техножрец
Форумчанин
 
Аватар для Foreseen
 
Регистрация: 04.07.2014
Сообщений: 289
По умолчанию

Код:
procedure TForm1.FormCreate(Sender: TObject);
begin
 Image1.Canvas.MoveTo(50, 50);
end;

procedure TForm1.Image1MouseUp(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
begin

if Button = mbLeft then
 begin
  BeginPath(Canvas.Handle);
  Image1.Canvas.LineTo(X,Y);
  Image1.Canvas.MoveTo(X,Y);
 end;
if Button = mbRight then
 EndPath(Canvas.Handle);
end;
— Двери есть везде. Просто нужно знать, как в них войти.
Foreseen вне форума Ответить с цитированием
Старый 27.10.2014, 15:47   #53
Аника Янковская
Пользователь
 
Регистрация: 23.10.2014
Сообщений: 58
По умолчанию

Получается почему-то тоже самое, что и до этого было???
Аника Янковская вне форума Ответить с цитированием
Старый 27.10.2014, 16:11   #54
Foreseen
Техножрец
Форумчанин
 
Аватар для Foreseen
 
Регистрация: 04.07.2014
Сообщений: 289
По умолчанию

Код:
procedure TForm1.Button1Click(Sender: TObject);
begin
 Form2.Show;
 Unit2.Form2.Image1.Canvas.MoveTo(100, 100);
end;
Код:
procedure TForm2.Image1MouseUp(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
begin
 if Button = mbLeft then
  begin
   BeginPath(Canvas.Handle);
   Image1.Canvas.LineTo(X,Y);
   Image1.Canvas.MoveTo(X,Y);
  end;
 if Button = mbRight then
  EndPath(Canvas.Handle);
end;
— Двери есть везде. Просто нужно знать, как в них войти.
Foreseen вне форума Ответить с цитированием
Старый 27.10.2014, 16:33   #55
Аника Янковская
Пользователь
 
Регистрация: 23.10.2014
Сообщений: 58
По умолчанию

Спасибо огромное за помощь) А можно ли теперь замкнуть эту кривую??
Аника Янковская вне форума Ответить с цитированием
Старый 27.10.2014, 16:37   #56
Luuzuk
Форумчанин
 
Аватар для Luuzuk
 
Регистрация: 18.01.2012
Сообщений: 975
По умолчанию

LineTo() в начальную точку
Благодарить в репутацию. Проклинать — туда же
Luuzuk вне форума Ответить с цитированием
Старый 27.10.2014, 16:53   #57
Аника Янковская
Пользователь
 
Регистрация: 23.10.2014
Сообщений: 58
По умолчанию

Не получится, мне нужно с помощью линий выделить на карте определенную область, начальную координату я не знаю, и не могу ее указать, чтобы линия замкнулась. Может как-то по другому можно сделать?
Аника Янковская вне форума Ответить с цитированием
Старый 27.10.2014, 16:55   #58
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 18,922
По умолчанию

А запомнить что мешает начальную точку?
Вложения
Тип файла: zip Новая папка (19).zip (53.3 Кб, 11 просмотров)
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию

Последний раз редактировалось Аватар; 27.10.2014 в 17:06.
Аватар вне форума Ответить с цитированием
Старый 27.10.2014, 17:04   #59
Foreseen
Техножрец
Форумчанин
 
Аватар для Foreseen
 
Регистрация: 04.07.2014
Сообщений: 289
По умолчанию

Цитата:
Сообщение от Аника Янковская Посмотреть сообщение
Не получится, мне нужно с помощью линий выделить на карте определенную область, начальную координату я не знаю, и не могу ее указать, чтобы линия замкнулась. Может как-то по другому можно сделать?
Когда первый раз нажимаешь, ты ее устанавливаешь. Далее, отправляешь координаты в переменную типа TPoint, а в конце построения траектории обращаешься к ней и замыкаешь фигуру.
— Двери есть везде. Просто нужно знать, как в них войти.
Foreseen вне форума Ответить с цитированием
Старый 27.10.2014, 17:07   #60
Аника Янковская
Пользователь
 
Регистрация: 23.10.2014
Сообщений: 58
По умолчанию

А можно написать, как это в тексте программы будет выглядеть, а то я наверно сама не разберусь: как это все записать?

Последний раз редактировалось Аника Янковская; 27.10.2014 в 17:23.
Аника Янковская вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
программа на паскале, в которой можно нарисовать несколько окружностей произвольного радиуса мышкой в графическом режиме А1иночка Помощь студентам 9 11.04.2012 00:19
Работа с Канвой, Шейпы Arkuz Общие вопросы Delphi 0 17.12.2010 01:58
Работа с канвой Delphi (Математический расчёт) Dancewithevil Помощь студентам 1 20.05.2010 10:13
нарисовать стрелку на делфи studentOne Помощь студентам 7 17.11.2009 07:36
Работа с мышкой Klio Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 2 03.05.2008 22:37