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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 26.09.2012, 08:33   #1
Ericnex
Форумчанин
 
Регистрация: 07.04.2010
Сообщений: 218
По умолчанию Рисование средствами Delphi

Как с помощью компонента PaintBox или другим способом можно самостоятельно то есть вручную нарисовать крестик в Delphi. Если возможно пример кода.
Ericnex вне форума Ответить с цитированием
Старый 26.09.2012, 08:54   #2
phomm
personality
Старожил
 
Аватар для phomm
 
Регистрация: 28.04.2009
Сообщений: 2,886
По умолчанию

Крестик рисовать примерно так, пишу прямо тут (возможны мелкие помарки), думаю, довольно универсальный способ
Код:
procedure DrawCross(Canv: TCanvas; Offs, Size: TPoint; LineWd: Byte; Color: TColor);
begin
  // можно добавить сохранение параметров толщины, места и цвета линии, добавив локальные переменные 
  Canv.Pen.Width := LineWd; 
  Canv.Pen.Color := Color;
  Canv.MoveTo(Offs.X, Offs.Y);
  Canv.LineTo(Offs.X + Size.X, Offs.Y + Size.Y);
  Canv.MoveTo(Offs.X + Size.X, Offs.Y);
  Canv.LineTo(Offs.X, Offs.Y + Size.y);
  // а тут возврат параметров по окончанию отрисовки  
end;
//Вызов отрисовки крестика на пейнтбоксе начиная в координате 0/0 и размером 100*100, красным цветом и линией толщиной 5 пикселей
DrawCross(PaintBox1.Canvas, Point(0, 0), Point(100, 100), 5, clRed);

Последний раз редактировалось phomm; 26.09.2012 в 08:59.
phomm вне форума Ответить с цитированием
Старый 26.09.2012, 11:30   #3
Ericnex
Форумчанин
 
Регистрация: 07.04.2010
Сообщений: 218
По умолчанию

На какое событие лучше повесить программный код?

Программа не понимает вот это

Код:
DrawCross(PaintBox1.Canvas, Point(0, 0), Point(100, 100), 5, clRed);

Последний раз редактировалось Stilet; 26.09.2012 в 21:48.
Ericnex вне форума Ответить с цитированием
Старый 26.09.2012, 13:40   #4
phomm
personality
Старожил
 
Аватар для phomm
 
Регистрация: 28.04.2009
Сообщений: 2,886
По умолчанию

Это вызов данного кода, его, например, можно поместить в обработчик клика кнопки, на форме, соответственно, надо просто разместить пейнтбокс и кнопку, в обработчик клика кнопки вписать вызов, а саму процедуру просто поместить в модуль с формой (или в отдельный модуль и подключить модуль к модулю формы, чтобы соблюдать модульность работы кода).
Его можно также положить в обработчик события FormCreate - тогда сразу при запуске программы крест уже будет.

Последний раз редактировалось phomm; 26.09.2012 в 13:43.
phomm вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Рисование на picturebox средствами OpenNurbs samouelson Visual C++ 0 02.06.2011 13:14
Рисование куба средствами GDI terminadoor Win Api 0 18.03.2011 17:45
Рисование текста средствами php на картинке alexborovnikov PHP 2 14.11.2010 23:39
Задержка в (нс) средствами Delphi. midis Помощь студентам 11 02.10.2010 13:36
Форматирование средствами Delphi Life_Master Общие вопросы Delphi 4 20.05.2010 08:04