开发自己的 GUI 控件

发布于 2024-10-12 09:11:40 字数 682 浏览 7 评论 0原文

我正在为游戏开发一个图形用户界面,然后,我需要处理所有事情,从事件到绘制控件,这非常困难。

我有一个逻辑问题,上面我将在图像的帮助下解释我的问题是什么:

alt text

我想要使这个可滚动区域,但我不知道如何。

我有两个函数来绘制皮肤(背景区域)和精灵(图像中的项目):

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:

alt text

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 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

哆啦不做梦 2024-10-19 09:11:40

当您滚动时,有一个覆盖图像隐藏图像的顶部和底部。你的数学变得容易多了。

Have an overlay image hiding the tops and bottoms of the images when you scroll. Your math just got a whole lot easier.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文