Вверх ↑
Этот топик читают: Гость
Ответов: 168
Рейтинг: 7
#1: 2014-06-08 14:01:19 ЛС | профиль | цитата
Вопрос к столпам среды.
При изготовлении элемента есть свойство Picture
-Как достать битмап выбранный в свойствах,при самостоятельной прорисовке элемента из-под Draw функции.
-Что за структура DTools: PDrawTools присутствует в инициализации.
карма: 1

0
Ответов: 2437
Рейтинг: 693
#2: 2014-06-08 16:53:50 ЛС | профиль | цитата
flash1103 писал(а):
При изготовлении элемента есть свойство Picture -Как достать битмап выбранный в свойствах
Посмотрите в элементе Bitmap: Хранение картинки в памяти (вкладка ГрафикаКартинка). Выделите элемент и нажмите Ctrl+F для просмотра кода элемента.
flash1103 писал(а):
Что за структура DTools: PDrawTools присутствует в инициализации
А где именно в HiAsm используется такая структура? Не в одном элементе не нашел.
карма: 11

0
Разработчик
Ответов: 26305
Рейтинг: 2146
#3: 2014-06-08 17:22:11 ЛС | профиль | цитата
sla8a писал(а):
Посмотрите в элементе Bitmap: Хранение картинки в памяти (вкладка ГрафикаКартинка)

sla8a, мимо. Чел спрашивает о классе Custom, который предполагает наличе Real отрисовки в режиме Design Time.
карма: 22

0
Ответов: 168
Рейтинг: 7
#4: 2014-06-08 17:26:21 ЛС | профиль | цитата
Имеются ввиду нестандартные элементы с самостоятельной отрисовкой .dpr.dll в папке DelphiDraw
Нашел ответ в ImgBtn
code_33757.txt
Хотелось бы узнать полную структуру PDrawTools, в хелпе не описано.
------------ Дoбавленo в 17.26:
nesco писал(а):

Абсолютно верно.
карма: 1

0
файлы: 1code_33757.txt [318B] [356]
Разработчик
Ответов: 26305
Рейтинг: 2146
#5: 2014-06-08 17:28:10 ЛС | профиль | цитата
flash1103 писал(а):
Хотелось бы узнать полную структуру PDrawTools, в хелпе не описано.

Это просто указатель. Описан в drawShare.pas
карма: 22

0
Гость
Ответов: 17029
Рейтинг: 0
#6: 2014-06-08 17:32:12 правка | ЛС | профиль | цитата


Редактировалось 2 раз(а), последний 2025-01-21 10:14:38
карма: 0

0
Ответов: 2437
Рейтинг: 693
#7: 2014-06-08 17:33:33 ЛС | профиль | цитата
flash1103 писал(а):
в хелпе не описано.

Это?
#pas
TDrawTools = object
public
CreateBitmap:function (PRec:PPParamRec):cardinal; cdecl;
DrawBitmap:procedure (Bmp:cardinal; DC:HDC; X,Y:integer); cdecl;
DeleteBitmap:procedure (Bmp:cardinal); cdecl;
GetSizeBitmap:procedure (Bmp:cardinal; var w,h:cardinal); cdecl;
end;
PDrawTools = ^TDrawTools;

------------ Дoбавленo в 17.33:
г. ость, опередил на доли секунд.
карма: 11

0
Ответов: 168
Рейтинг: 7
#8: 2014-06-08 17:38:36 ЛС | профиль | цитата
Как думаеш nesco, если перевести 200-300грн человек не обидется
А то край надо
------------ Дoбавленo в 17.38:
sla8a,nesco,г.ость -спасибо что ткнули носом
карма: 1

0
Разработчик
Ответов: 26305
Рейтинг: 2146
#9: 2014-06-08 17:44:57 ЛС | профиль | цитата
flash1103 писал(а):
если перевести 200-300грн человек не обидется

Понятия не имею
карма: 22

0
Ответов: 168
Рейтинг: 7
#10: 2014-06-10 20:01:09 ЛС | профиль | цитата
Опять те-же грабли
Можно вывести картинку через DrawBitmap:procedure (Bmp:cardinal; DC:HDC; X,Y:integer); cdecl; но меня это не совсем устраивает
Есть необходимость растяжки изображения, но сделать не получается, так-как Bmp:cardinal (по сути dword)
Что это такое???
- разименованный указатель (на что )^
- handle,tbitmap,hbitmap,canvas.handle или свой буфер
Перепробовал все варианты - нэ робэ(кроме бинарного буфера в памяти )
Как получить канву этого битмапа для функций StretchBlt???
карма: 1

0
Ответов: 4664
Рейтинг: 767
#11: 2014-06-11 11:42:48 ЛС | профиль | цитата
Предполагаю, можно создать свой DC, сделать на нем DrawBitmap, затем из этого нового DC выполнить StretchBlt на DC, который передаётся в процедуру Draw. Тот же вариант, но только с одним DC из Draw: сделать DrawBitmap на нём, потом выполнить StretchBlt на нём же. Если новый размер меньше оригинального - остальные области залить произвольным цветом.
карма: 26

0
Ответов: 168
Рейтинг: 7
#12: 2014-06-11 20:23:58 ЛС | профиль | цитата
Спс Netspirit,буду пробывать.
------------ Дoбавленo в 20.23:
Не, с DC не получилось. Решилось всё элементарно.
Создаеш pbitmap и подсовываеш его Canvas в DrawBitmap
Вообщем вопрос снят.
карма: 1

0
12
Сообщение
...
Прикрепленные файлы
(файлы не залиты)