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

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

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

Восстановить пароль

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

Ответ
 
Опции темы Поиск в этой теме
Старый 24.11.2009, 08:21   #1
Kristoffer
Новичок
Джуниор
 
Регистрация: 06.10.2009
Сообщений: 1
Сообщение Delphi 7 СПУ

Я с другом пишу программу которая считает сетевые графы, в данный момент не можем реализовать привязку стрелки к массиву содержащему Image

прорисовка стрелки

Код:
procedure TForm1.arrow_paint(X1, Y1,x2,y2: Integer);
var
u,a,l,xn,yn,xv,yv:double;
begin
  u:=ArcTanVit(x2-x1,y2-y1);
  a:=pi/6;
  L:=10;
  xn:=x2+l*cos(u+pi+a);
  yn:=Y2+l*sin(u+pi+a);
  xv:=x2+l*cos(u+pi-a);
  yv:=y2+l*sin(u+pi-a);
  self.Canvas.Pen.Color:=clBlack;
  self.Canvas.MoveTo(x1,y1);
  self.Canvas.lineto(x2,y2);
  self.Canvas.lineto(Round(xn),Round(yn));
  self.Canvas.MoveTo(x2,y2);
  self.Canvas.lineto(Round(xv),Round(yv));
end;
прорисовка стрелки начинается с нажатия кнопки на форме

Код:
procedure TForm1.Image1MouseDown(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
begin
  case self.fCreateLinc of
    0:begin
      exit; // анализ перетаскивания задачи
    end;
    1:begin
       self.Canvas.MoveTo(x,y);              // запомтиь координаты
       self.fCreateLinc:=2;
       x1:=x;
       y1:=y;
      end;
    2:begin
       x2:=x;
       Y2:=y;
       self.arrow_paint(x1,y1,x2,y2); // вызвать процедуру рисования стрелки
       self.fCreateLinc:=0;
       self.ToolButton1.Down:=false;
       cursor:=crDefault;
     end;
     end;
end;
проверка указан ли Image
Код:
function check(Sender: TObject): integer;
var
   img:timage;
   i:integer;
   count:integer;
begin
   img:=Timage(sender);
   for i:=1 to count-1 do
   begin
   if img=image[i]
   then
   exit
   else
   exit;
   end;
end;
надо заменить Exit на привязку к Image на форме
если у кого то есть мысли на этот счет прошу Вас отписаться...
Kristoffer вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
На Delphi 7 сделать игру кто хочет стать миллионером в delphi 7 666dart666 Помощь студентам 11 04.11.2010 17:57
Программа-тест в Delphi) скиньте))а то програмку здавать преподу надо,и самой хочется понять Delphi Верчик Помощь студентам 9 02.03.2009 17:46
Delphi. Как нарисовать в Delphi два движущиеся шара с определенной скоростью? redred Общие вопросы Delphi 10 11.12.2007 10:43
Как открыть БД, написанную в Delphi если нf другой машине Delphi нет? dagarik БД в Delphi 7 22.10.2007 17:54
не StringGrid1.Cells[1,1]:='Delphi'; а вот так SG1.C[1,1]:='Delphi' Nemesisking Компоненты Delphi 7 08.09.2007 03:27