Форум программистов, компьютерный форум, киберфорум
C++ Builder
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.71/7: Рейтинг темы: голосов - 7, средняя оценка - 4.71
Эксперт С++
 Аватар для Avazart
8488 / 6155 / 615
Регистрация: 10.12.2010
Сообщений: 28,683
Записей в блоге: 30

Создание компонента,как прикрутить TBitmap->Canvas

03.05.2012, 19:40. Показов 1363. Ответов 4
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Как можно прикрутить канву например к TPanel что бы на нем можно было рисовать как на канве TImage
т.е что бы изображение не затералось?

Пробовал создать такой компонент.В нем создавал TBitmap при этом удалось осуществить рисование только в OnPaint формы.
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
03.05.2012, 19:40
Ответы с готовыми решениями:

Создание собственного компонента. Как?
Доброго всем времени суток. Пишу клиент-серверное приложение на основе Client ~ServerSocket'ов При общении клиента с сервером...

TBitmap как параметр функции
void ChangeBitmapSize (TBitmap* _btm&, int _newWidth, int _newHeight){ _btm->Canvas->StretchDraw(Rect(0, 0, _newWidth,...

Как повернуть TBitmap или TImage
начал делать игру на билдере и сразу появился такой вопрос)

4
 Аватар для cpp_developer
20124 / 5691 / 417
Регистрация: 09.04.2010
Сообщений: 22,546
Записей в блоге: 1
03.05.2012, 19:58
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
TForm1 *Form1;
TControlCanvas *MyCanvas;
 
void __fastcall TForm1::FormCreate(TObject *Sender)
{
  MyCanvas = new TControlCanvas;
  MyCanvas->Control = Panel1;
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button3Click(TObject *Sender)
{
  MyCanvas->LineTo(100,100);
}
//---------------------------------------------------------------------------
void __fastcall TForm1::FormDestroy(TObject *Sender)
{
  delete MyCanvas;
}
И перерисовывать, по необходимости, или в OnPaint.
1
Эксперт С++
 Аватар для Avazart
8488 / 6155 / 615
Регистрация: 10.12.2010
Сообщений: 28,683
Записей в блоге: 30
03.05.2012, 20:03  [ТС]
Ну это не компонет, да и
C++
1
MyCanvas->LineTo(100,100);
Сотрется при перекрытии другим окном или другой перерисовке- именно в этом проблема
0
 Аватар для cpp_developer
20124 / 5691 / 417
Регистрация: 09.04.2010
Сообщений: 22,546
Записей в блоге: 1
03.05.2012, 20:14
Я ж говорю, перерисовывать. Почему нельзя использовать TImage?
0
Эксперт С++
 Аватар для Avazart
8488 / 6155 / 615
Регистрация: 10.12.2010
Сообщений: 28,683
Записей в блоге: 30
03.05.2012, 20:24  [ТС]
Я ж говорю, перерисовывать. Почему нельзя использовать TImage?
Ну видимо потому что он излишен,ведь создается свой компонент. Да и сам по себе интересен процесс перерисовки в TImage
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
03.05.2012, 20:24
Помогаю со студенческими работами здесь

как вернуть HBITMAP у Graphics::TBitmap
Добрый вечер! Есть функция вставляющая картинки в видео по их хэндлу: HRESULT AddAviFrame(HAVI avi, HBITMAP hbm) { if (avi==NULL)...

Как удалять объект Graphics::TBitmap
подскажите пож.как удалять объект Graphics::TBitmap *,в одних книгах написано что builder сам подчищает такой мусор в других что это...

TJpegImage в TBitmap, и как можно использовать Canvas для JPEG без потери качества!
Доброго времени суток. Мне интересно если перегонять TJpegImage в TBitmap таким способом: uses Jpeg; ......................... ...

TBitMap Canvas в многопотоке утечка памяти
И так для теста на писал не сколько функций. Тут все нормально очищает: procedure TForm1.Button3Click(Sender: TObject); var ...

Создание TBitmap по пикселам
Здравствуйте! Не пойму как реализовать создание TBitmap по пикселю. Что бы понять основную суть, нужен исходник. К примеру var b1, b2 :...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Новые блоги и статьи
Символьное дифференцирование
igorrr37 13.02.2026
/ * Логарифм записывается как: (x-2)log(x^2+2) - означает логарифм (x^2+2) по основанию (x-2). Унарный минус обозначается как ! */ #include <iostream> #include <stack> #include <cctype>. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru