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

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

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 12.11.2013, 20:36   #1
Татьяна Макеева
Новичок
Джуниор
 
Регистрация: 16.10.2013
Сообщений: 2
По умолчанию Получение ввода от мыши. Рисование в форме

Добрый вечер! Помогите, пожалуйста, выполнить л/р в Delphi:
Напишите код программы, если не сложно)))
Поместить в форму меню Color (на странице Standart Палитры Компонентов есть объект MainMenu) c командами PenColor и BrushColor,
которые будут соответственно изменять цвет пера и кисти с помощью стандартной диалоговой панели (рис. 5.1).image002.jpg
Реализовать рисование так, чтобы по нажатию мыши (щелкая левой кнопкой и, удерживая ее при перемещении мыши по горизонтали и вертикали) рисовалась окружность произвольного радиуса и цвета, а используя туже технологию и удерживая клавишу ALT, можно было рисовать отрезки различной длины и цвета.
Татьяна Макеева вне форума Ответить с цитированием
Старый 12.11.2013, 21:01   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Даю подсказку:
Код:
unit Unit1;

{$mode objfpc}{$H+}

interface

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

type

  { TForm1 }

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

var mp,mr:TPoint; r:double;
  Form1: TForm1;

implementation

{$R *.lfm}

{ TForm1 }

procedure TForm1.FormMouseDown(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
begin
  mp.x:=x;mp.y:=y;
  tag:=1;
end;

procedure TForm1.FormMouseMove(Sender: TObject; Shift: TShiftState; X,
  Y: Integer);
begin
 mr.x:=x; mr.y:=y;
 Repaint;
end;

procedure TForm1.FormMouseUp(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
begin
  //tag:=2;
end;

procedure TForm1.FormPaint(Sender: TObject);
begin
  if Tag=1 then Canvas.Ellipse(mp.x,mp.y,mr.x,mr.y);
end;

end.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 13.11.2013, 09:14   #3
Татьяна Макеева
Новичок
Джуниор
 
Регистрация: 16.10.2013
Сообщений: 2
По умолчанию

Stilet привет,спасибо за ответ!!! Но, извини за мою наглость, не мог бы ты скинуть полностью проект, просто я "чайник" в данной программе и для меня сложновато самой все сделать))). Спасибо!!!!
Татьяна Макеева вне форума Ответить с цитированием
Старый 13.11.2013, 09:21   #4
Vanta11a
Lawful Evil
Участник клуба
 
Аватар для Vanta11a
 
Регистрация: 13.05.2008
Сообщений: 1,208
По умолчанию

Девушка(?), а девушка(?), Вы учитесь или штаны просиживаете? Если первое - делайте сами, выкладывайте наработки, мы поможем с исправлением косяков. Если второе - а не пойти бы Вам во фриланс, оплачивать труд других людей?
Алгоритм - бесплатен. Поиск багов - бесплатен. Реализация алгоритма - за отдельную плату.
На форуме помогают советами и объясняют, а не пишут на халяву программы, лабы, курсачи и т.д. (c)
Vanta11a вне форума Ответить с цитированием
Старый 13.11.2013, 13:44   #5
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
не мог бы ты скинуть полностью проект
Он тебе не поможет
Я в делфи не пишу уже давно. Представленный выше код из Лазаруса, он хоть и схож на 99% с Делфи, но Делфи его не откроет.

Создавать на форме события умеешь? Открывай в инспекторе обьектов вкладку Events и кликай там на событиях что представлены в моем примере - появятся процедуры-пустышки. Их и наполняй по примеру.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Рисование на форме C# LOST94 C# (си шарп) 11 15.06.2013 17:47
Получение координат мыши из GPM Evgenuych96 Общие вопросы C/C++ 0 14.02.2013 15:05
Рисование на форме Dissembler7 Помощь студентам 2 17.03.2012 22:43
Рисование на форме. (*_*) Общие вопросы C/C++ 1 22.09.2009 13:06
рисование на форме Kostua Помощь студентам 2 26.07.2008 16:24