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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 30.03.2008, 19:52   #1
Rusl92
Форумчанин
 
Аватар для Rusl92
 
Регистрация: 30.03.2008
Сообщений: 392
Плохо Рисование вTImage

Здравствуйте, у меня такой вопрос:каким обрзом можно рисовать во время работы проги в компоненте TImage, то есть пользователь должен нарисовать линию в этом компоненте (кАк в Паинте), а потом должна выполняться проверка, нарисовано ли что-нибудь в TImage. Заранее спасибо!
Программирование - это великое искусство... Такое же как например и живопись!
Rusl92 вне форума Ответить с цитированием
Старый 30.03.2008, 20:02   #2
_Dmitry
Участник клуба
 
Аватар для _Dmitry
 
Регистрация: 02.09.2007
Сообщений: 1,193
По умолчанию

Код:
if Image1.Picture.Bitmap.Modified then ...; //проверка изменения

Image1.Canvas.MoveTo(X0,Y0); //перемещает указатель в (X0,Y0)
Image1.Canvas.LineTo(X1,Y1); //рисует линию от (X0,Y0) до (X1,Y1)
Купите или скачайте книжку по Delphi: http://www.programmersclub.ru/
_Dmitry вне форума Ответить с цитированием
Старый 30.03.2008, 20:20   #3
mihali4
*
Старожил
 
Регистрация: 22.11.2006
Сообщений: 9,201
По умолчанию

В конце концов, откройте готовую демку от Борланда, она у вас есть:
Borland\Delphi7\Demos\Doc\Graphex

З.Ы. Не понимаю... В демокаталоге в Дельфи понапихано полно хороших вещей, по которым изучить язык и приемы программирования - плевое дело. Нет, у себя под ногами не хотят замечать... Странно это все.

Последний раз редактировалось mihali4; 30.03.2008 в 21:55.
mihali4 вне форума Ответить с цитированием
Старый 30.03.2008, 20:53   #4
Rusl92
Форумчанин
 
Аватар для Rusl92
 
Регистрация: 30.03.2008
Сообщений: 392
Плохо Рисование

Moveto and Lineto (перемещение и рисование) я знаю, а мне надо, чтобы пользователь во время работы проги 1) курсор при подведении на TImage становился "карандашом" 2) пользователь Во время работы проги рисовал в компоненте TImage (Как в Паинте рисуют) *(то есть компонент TImage некоторых размеров и рисование производится в его пределах)
3) после того, как курсор убирается из пределов компонента TImage, то он становится "обычным"
Вот какая задача!
Программирование - это великое искусство... Такое же как например и живопись!
Rusl92 вне форума Ответить с цитированием
Старый 30.03.2008, 21:01   #5
delphin100
Он лайн
Форумчанин
 
Аватар для delphin100
 
Регистрация: 26.09.2007
Сообщений: 173
По умолчанию

Rus192 открой пример от Борланда там не только курсор станет карандашом он и прыгать по твоему хотению будет
delphin100 вне форума Ответить с цитированием
Старый 30.03.2008, 21:13   #6
Rusl92
Форумчанин
 
Аватар для Rusl92
 
Регистрация: 30.03.2008
Сообщений: 392
По умолчанию

Вы не могли бы написать?
Программирование - это великое искусство... Такое же как например и живопись!
Rusl92 вне форума Ответить с цитированием
Старый 30.03.2008, 21:14   #7
Rusl92
Форумчанин
 
Аватар для Rusl92
 
Регистрация: 30.03.2008
Сообщений: 392
По умолчанию

Я не получил ответ на мой вопрос!
Программирование - это великое искусство... Такое же как например и живопись!
Rusl92 вне форума Ответить с цитированием
Старый 31.03.2008, 10:37   #8
_Dmitry
Участник клуба
 
Аватар для _Dmitry
 
Регистрация: 02.09.2007
Сообщений: 1,193
По умолчанию

Код:
var
  downkey: boolean = false;

procedure TForm1.FormCreate(Sender: TObject);
begin
  Screen.Cursors[1]:=LoadCursorFromFile('Cursor1.cur');
end;

procedure TForm1.Image1MouseDown(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
begin
  Screen.Cursor:=1;
  Image1.Canvas.MoveTo(X,Y);
  downkey:=true;
end;

procedure TForm1.Image1MouseUp(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
begin
  Screen.Cursor:=0;
  downkey:=false;  
end;

procedure TForm1.Image1MouseMove(Sender: TObject; Shift: TShiftState; X,
  Y: Integer);
begin
  if downkey then Image1.Canvas.LineTo(X,Y);
end;
Вложения
Тип файла: zip paint.zip (1.5 Кб, 36 просмотров)
_Dmitry вне форума Ответить с цитированием
Старый 31.03.2008, 20:17   #9
Rusl92
Форумчанин
 
Аватар для Rusl92
 
Регистрация: 30.03.2008
Сообщений: 392
По умолчанию

Не получилось, программа не работает!
Программирование - это великое искусство... Такое же как например и живопись!
Rusl92 вне форума Ответить с цитированием
Старый 31.03.2008, 20:23   #10
_Dmitry
Участник клуба
 
Аватар для _Dmitry
 
Регистрация: 02.09.2007
Сообщений: 1,193
По умолчанию

Сочувствую. Но может все-таки сообщите, что не работает.
_Dmitry вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
рисование в TImage Rusl92 Общие вопросы Delphi 8 02.05.2008 20:23
Рисование... HunterMan Win Api 10 30.04.2008 23:46
Рисование на экране... Roberto Win Api 3 07.04.2008 07:35
Рисование в Chart SunKnight Общие вопросы Delphi 3 07.02.2008 09:16
рисование изолиний Alar Паскаль, Turbo Pascal, PascalABC.NET 0 30.10.2006 14:17