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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 14.07.2007, 22:05   #1
Roof
Форумчанин
 
Аватар для Roof
 
Регистрация: 01.02.2007
Сообщений: 785
Радость окно по рисунку

Хочу разобраться с кодом, который создает окно по любому рисунку.

TStretchHandle = class(TCustomControl)
private procedure WMEraseBkgnd(var message: TWMEraseBkgnd); message WM_ERASEBKGND;
procedure WMGetDLGCode(var message: TMessage);
message WM_GETDLGCODE;
protected procedure Paint;
override; property Canvas;
public procedure CreateParams(var Params: TCreateParams);
override;end;procedure TStretchHandle.CreateParams(var Params: TCreateParams);
begin { set default Params values } inherited CreateParams(Params); { then add transparency } Params.ExStyle := Params.ExStyle + WS_EX_TRANSPARENT;
end;
procedure TStretchHandle.WMGetDLGCode(var message: TMessage);
begin { completely fake erase, don't call inherited, don't collect $200 } message.Result := DLGC_WANTARROWS;
end;procedure TStretchHandle.WMEraseBkgnd(var message: TWMEraseBkgnd);
begin { completely fake erase, don't call inherited, don't collect $200 } message.Result := 1;
end;
procedure TStretchHandle.Paint;
begin inherited Paint; with Canvas do begin // рисуете что нужно - // где не рисовали, там будет "прозрачно"
end;
end;

Вопрос в procedure TStretchHandle.Paint;
как понять рисуете что надо??

мне подойдет любой другой код, если у Вас есть другие решения буду очень рад их рассмотреть.

Заранее большое спасибо. )
Изо всей благодати
В руках крепко сжатых
Я донесу только капли
Roof вне форума Ответить с цитированием
Старый 15.07.2007, 00:24   #2
mutabor
Телепат с дипломом
Старожил
 
Аватар для mutabor
 
Регистрация: 10.06.2007
Сообщений: 4,929
По умолчанию

Так и понимать, рисуешь что надо функциями
LineTo, MoveTo, Pen, Brush и т.д. это все методы TCanvas смотри справку или скопируй на эту канву bmp файл

p.s. Если не разберешься поищу пример где-то на диске был от книги
The future is not a tablet with a 9" screen no more than the future was a 9" black & white screen in a box. It’s the paradigm that survives. (Kroc Camen)
Проверь себя! Онлайн тестирование | Мой блог
mutabor вне форума Ответить с цитированием
Старый 15.07.2007, 11:26   #3
Virtson
Владимир М.
Участник клуба
 
Аватар для Virtson
 
Регистрация: 30.10.2006
Сообщений: 1,289
По умолчанию

Цитата:
{ completely fake erase, don't call inherited, don't collect $200 }
где такой код нашел ? ))
Берегите друг друга!
Virtson вне форума Ответить с цитированием
Старый 15.07.2007, 12:56   #4
Roof
Форумчанин
 
Аватар для Roof
 
Регистрация: 01.02.2007
Сообщений: 785
По умолчанию спасиб ))

спасиб, постараюсь разобраться, но буду благодарен, если примерчик пришлешь, не лишний будет
Изо всей благодати
В руках крепко сжатых
Я донесу только капли

Последний раз редактировалось Roof; 15.07.2007 в 13:05.
Roof вне форума Ответить с цитированием
Старый 15.07.2007, 12:59   #5
Roof
Форумчанин
 
Аватар для Roof
 
Регистрация: 01.02.2007
Сообщений: 785
По умолчанию хороший комментарий

я так и не уверен, что правильно понял комментарий , просто когда копировал, чего то внимания не обратил
про клончиков почитал, возможно попозже))
Изо всей благодати
В руках крепко сжатых
Я донесу только капли
Roof вне форума Ответить с цитированием
Старый 15.07.2007, 13:03   #6
Roof
Форумчанин
 
Аватар для Roof
 
Регистрация: 01.02.2007
Сообщений: 785
По умолчанию

а нашел код на http://delphiworld.narod.ru
статья: Программа и Интерфейс - Интерфейс - Окно по рисунку
Изо всей благодати
В руках крепко сжатых
Я донесу только капли
Roof вне форума Ответить с цитированием
Старый 16.07.2007, 21:03   #7
mutabor
Телепат с дипломом
Старожил
 
Аватар для mutabor
 
Регистрация: 10.06.2007
Сообщений: 4,929
По умолчанию

Нашел диск, именно этого примера на нем нет Но я нашел свой старый исходник, немного доработал, в смысле упростил, результат здесь Вложение 811
The future is not a tablet with a 9" screen no more than the future was a 9" black & white screen in a box. It’s the paradigm that survives. (Kroc Camen)
Проверь себя! Онлайн тестирование | Мой блог

Последний раз редактировалось mutabor; 11.09.2007 в 19:54.
mutabor вне форума Ответить с цитированием
Старый 16.07.2007, 21:18   #8
Roof
Форумчанин
 
Аватар для Roof
 
Регистрация: 01.02.2007
Сообщений: 785
Радость

Спасиб!!
Прикольная штука буду разбираться.
А я уже по-другому немного сделал.
через Image.
Изо всей благодати
В руках крепко сжатых
Я донесу только капли

Последний раз редактировалось Roof; 16.07.2007 в 21:22.
Roof вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Окно MadDog__ Win Api 0 17.01.2008 00:33
Окно из DLL SunKnight Общие вопросы Delphi 1 16.12.2007 03:36
Как прикрепить рисунок к рисунку GrEFon HTML и CSS 2 26.11.2007 17:21
«Окно+символ». Создать класс, представляющий окно в текстовом режиме. RustreX Паскаль, Turbo Pascal, PascalABC.NET 1 11.11.2007 19:28
Окно по рисунку Stanislav Общие вопросы Delphi 2 03.10.2007 14:18