开发自己的 GUI 控件
我正在为游戏开发一个图形用户界面,然后,我需要处理所有事情,从事件到绘制控件,这非常困难。
我有一个逻辑问题,上面我将在图像的帮助下解释我的问题是什么:
我想要使这个可滚动区域,但我不知道如何。
我有两个函数来绘制皮肤(背景区域)和精灵(图像中的项目):
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);
使用剪辑参数,我可以控制我想要绘制的皮肤/精灵的百分比,但是,我不知道如何设计它每个控制。
我在互联网上搜索了很多,但是,我只是找到了如何制作滚动条,但没有找到如何处理可滚动区域。
I'm developing a gui for a game,then,i need to handle everything,from events to draw the controls,its pretty hard.
i have a logical problem,above i will explain what is my question,with a help from a image:
I want to make this scrollable area,but i dont know how.
I have two functions to draw the Skins(BackGround Area) and the Sprites(items in the image):
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);
WIth Clips parameters,i can control what percentage of skin/sprite i want to draw,but,i dont know how to design it from every control.
I searched a lot on internet,but,i just found about how to do make scrollbars,but not how to deal with scrollable area.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
当您滚动时,有一个覆盖图像隐藏图像的顶部和底部。你的数学变得容易多了。
Have an overlay image hiding the tops and bottoms of the images when you scroll. Your math just got a whole lot easier.