我是一名高中生,通过视频在斯坦福大学学习cs106a。
对于我目前的作业,我必须添加GObjects并将它们相对于窗口大小定位。
我目前正在尝试使用命令
获取窗口的宽度int width = getWidth();
然而width = 0
可能导致这种情况的一件事: 这是我用多个类编写的第一个程序之一。
感谢您的帮助!
答案 0 :(得分:3)
一个可能的原因 - 您可能在窗口之前调用getWidth()
(我假设JFrame
)已经实现(也称为setVisible(true)
或pack()
)。 getWidth()
在实现之前将返回0。
答案 1 :(得分:1)
亚历,
如果没有您的示例代码,我会猜测并说您正在检查类的构造函数中的宽度,或者在创建基础OS窗口之前的其他时间,或者在它被摧毁之后。
如果你试图在这些时间内获得窗口属性,你可能会得到零或其他一些无意义的结果。