如何根据屏幕大小重新计算变量?

gg58donl  于 2021-07-06  发布在  Java
关注(0)|答案(0)|浏览(190)

所以,我有两个变量: this.width 以及 this.height ,我把它传递到一个叫做 GuiElement ,如图所示(这是一个简化示例):

int w = this.width / 5;
int aspectRatio = 2;
GuiElement guiElement = new GuiElement(w, w * aspectRatio);

这在一开始是可行的,但是当屏幕调整大小时 GuiElement 不会改变大小。
我希望能够重新计算的宽度和高度上 this.width 或者 this.height 更改(窗口大小)。
我已经尝试/考虑过的事情:
吸气剂:
由于我必须根据拥有的gui元素的多少来编写大量getter,所以不起作用,我可以创建一个函数来根据参数计算屏幕大小,但我宁愿不这样做(为了使ui框架尽可能简单,并给用户尽可能多的可定制性)
每次绘制屏幕时传入变量:
我考虑过这个,但它会把一切都搞得乱七八糟,不符合我目前的设计。
我使用java8btw(minecraft标签,因为我使用mixins来修改minecraft)
请不要告诉我使用getters。我已经考虑过很多次了,得出的结论是,这对我现在所做的事情是行不通的。

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题