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

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

Вернуться   Форум программистов > Delphi программирование > Мультимедиа в Delphi
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 26.07.2014, 20:18   #1
elviss77
Пользователь
 
Регистрация: 22.06.2014
Сообщений: 22
По умолчанию Присвоенинию у канваса действия

у канваса есть свойство например Pen у него есть действия Lineto,Rectangle и т.д такой вот вопрос есть три фигуры,как такие фигуры,или в чем сделать,чтобы присвоить или нарисовать с помощью canvas?
рисовать именно присвоением Canvas.pen. и фигура,просто надо кликом мыши рисовать готовую фигуру
Изображения
Тип файла: jpg Безымянный.jpg (8.7 Кб, 80 просмотров)

Последний раз редактировалось elviss77; 26.07.2014 в 20:22.
elviss77 вне форума Ответить с цитированием
Старый 26.07.2014, 20:37   #2
Человек_Борща
Старожил
 
Аватар для Человек_Борща
 
Регистрация: 30.12.2009
Сообщений: 11,442
По умолчанию

Кто понял суть вопроса?
Берете LineTo и ручками ручкми рисуете. Или функции пишите: DrawMeHarlemShake(Canvas:TCanvas):B oolean;
а внутри рисование чего-то в Canvas.
Человек_Борща вне форума Ответить с цитированием
Старый 26.07.2014, 20:45   #3
elviss77
Пользователь
 
Регистрация: 22.06.2014
Сообщений: 22
По умолчанию

суть вопроса:кликнуть мышью и в MouseDoun прописать рисование данной фигуры.По другому кликнул-нарисован уголок,как рисуется прямоугольник и т.д. так понятно?

Цитата:
Сообщение от Человек_Борща Посмотреть сообщение
Кто понял суть вопроса?
Берете LineTo и ручками ручкми рисуете. Или функции пишите: DrawMeHarlemShake(Canvas:TCanvas):B oolean;
а внутри рисование чего-то в Canvas.
если есть возможность нарисовать элипс вы же не рисуете его ручками?а присваиваете к Pen вот и мне надо создать такие фигуры действием к свойству Pen

Последний раз редактировалось Stilet; 26.07.2014 в 21:11.
elviss77 вне форума Ответить с цитированием
Старый 26.07.2014, 21:18   #4
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,792
По умолчанию

Думаю имеется ввиду такое:
Код:
unit Unit1;

{$mode objfpc}{$H+}

interface

uses
  Classes, SysUtils, FileUtil, Forms, Controls, Graphics, Dialogs;

type

  { TForm1 }

  TForm1 = class(TForm)
    procedure FormMouseUp(Sender: TObject; Button: TMouseButton;
      Shift: TShiftState; X, Y: Integer);
  private
    { private declarations }
  public
    { public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.lfm}

{ TForm1 }

procedure TForm1.FormMouseUp(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
const wh=100;
begin
  with Canvas do  begin
   Pen.Width:=1; Pen.Color:=clRed;
   MoveTo(x,y);
   if Button in [mbRight] then begin
    LineTo(x,y-wh);MoveTo(x,y);LineTo(x+wh,y);
   end else
   if Button in [mbLeft] then begin
    LineTo(x+wh,y-wh);MoveTo(x,y);LineTo(x+wh,y);
   end else
   if Button in [mbMiddle]then begin
    LineTo(x-wh,y);lineTo(x+wh,y);MoveTo(x,y); LineTo(x,y-wh);
   end else
   ;
  end;
end;

end.
Тут работают три кнопки мышки.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 26.07.2014, 21:38   #5
elviss77
Пользователь
 
Регистрация: 22.06.2014
Сообщений: 22
По умолчанию

нет немного не то,мне рисовать не надо(т.е. задейстаовать mause up mousemove с ними я работаю,мне нужно кликнуть мышкой и получить готовую фигуру,вот я например использую круг
with Image1.Canvas do begin
pen.Color:=clred;
Brush.Color:=clred;
Brush.Style:=bsSolid;
Ellipse(x-R,y-R,x+R,y+R);
присвоил-кликнул-круг.есть ли вариант вместо круга(вместо элипса) использовать другое действие для канвас пен
присвоил-кликнул-угол
elviss77 вне форума Ответить с цитированием
Старый 26.07.2014, 22:07   #6
elviss77
Пользователь
 
Регистрация: 22.06.2014
Сообщений: 22
По умолчанию

Цитата:
Сообщение от Stilet Посмотреть сообщение
Думаю имеется ввиду такое:
Код:
unit Unit1;

{$mode objfpc}{$H+}

interface

uses
  Classes, SysUtils, FileUtil, Forms, Controls, Graphics, Dialogs;

type

  { TForm1 }

  TForm1 = class(TForm)
    procedure FormMouseUp(Sender: TObject; Button: TMouseButton;
      Shift: TShiftState; X, Y: Integer);
  private
    { private declarations }
  public
    { public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.lfm}

{ TForm1 }

procedure TForm1.FormMouseUp(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
const wh=100;
begin
  with Canvas do  begin
   Pen.Width:=1; Pen.Color:=clRed;
   MoveTo(x,y);
   if Button in [mbRight] then begin
    LineTo(x,y-wh);MoveTo(x,y);LineTo(x+wh,y);
   end else
   if Button in [mbLeft] then begin
    LineTo(x+wh,y-wh);MoveTo(x,y);LineTo(x+wh,y);
   end else
   if Button in [mbMiddle]then begin
    LineTo(x-wh,y);lineTo(x+wh,y);MoveTo(x,y); LineTo(x,y-wh);
   end else
   ;
  end;
end;

end.
Тут работают три кнопки мышки.
извиняюсь глубоко...это мне и надо!!!!!!!!!!!!!!!!!!!!!! спасибо большое!!!!!!!!!!!!!!!!!!!!!!!!!!
elviss77 вне форума Ответить с цитированием
Старый 26.07.2014, 22:36   #7
Человек_Борща
Старожил
 
Аватар для Человек_Борща
 
Регистрация: 30.12.2009
Сообщений: 11,442
По умолчанию

Нет проблем. Следующий раз формулируйте вопрос так, чтоб поняли его все, а не только вы один. И поменьше этих знаков восклицания, а то создается впечатление, что по ту сторону сидит не нормальный психопат, со склонностями к истерике.
Человек_Борща вне форума Ответить с цитированием
Старый 26.07.2014, 23:02   #8
elviss77
Пользователь
 
Регистрация: 22.06.2014
Сообщений: 22
По умолчанию

Цитата:
Сообщение от Человек_Борща Посмотреть сообщение
Нет проблем. Следующий раз формулируйте вопрос так, чтоб поняли его все, а не только вы один. И поменьше этих знаков восклицания, а то создается впечатление, что по ту сторону сидит не нормальный психопат, со склонностями к истерике.
хорошо,извиняюсь,поймите-5 часов бился сам и в итоге,опять попросил помощи и ...проблема решилась.теперь буду штудировать код-что к чему
elviss77 вне форума Ответить с цитированием
Ответ


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

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Действия с таблицами CallMeJammer Общие вопросы Delphi 1 05.04.2011 17:35
смена действия designer999 Общие вопросы Delphi 12 25.03.2010 20:04
Арифметически действия Dem6 БД в Delphi 10 09.11.2009 20:28
строки и действия DeDoK Общие вопросы Delphi 21 08.08.2009 02:55
Завершение действия SunKnight Общие вопросы Delphi 3 12.02.2008 18:25