Разработка собственных графических элементов управления
Я разрабатываю графический интерфейс для игры, тогда мне нужно обрабатывать все, от событий до рисования элементов управления, это довольно сложно.
У меня есть логическая проблема, выше я объясню, что мой вопрос, с помощью изображения:
Я хочу сделать эту прокручиваемую область, но я не знаю как.
У меня есть две функции для рисования скинов (BackGround Area) и спрайтов (элементы на изображении):
procedure DrawSprite(LeftOffSet, TopOffSet, Size, ItemId, ItemData1, ItemData2, EdgeR, EdgeG, EdgeB, ClipLeftOffSet, ClipTopOffSet, ClipWidth, clipHeight, TextFont, TextR, TextG, TextB, TextAlign, TextForce: Integer);
procedure DrawSkin(LeftOffSet, TopOffSet, Width, Height, SkinId, ClipLeftOffSet, ClipTopOffSet:integer);
С помощью параметров Clips я могу контролировать, какой процент скина / спрайта я хочу нарисовать, но я не знаю, как создать его из каждого элемента управления.
Я много искал в интернете, но я только что узнал, как создавать полосы прокрутки, а не как справляться с областью прокрутки.
1 ответ
Имейте оверлейное изображение, скрывающее верх и низ изображений при прокрутке. Ваша математика стала намного проще.