我正在尝试使用Java绘画 实用性,这有点麻烦。
我试图做一些我认为非常基本的事情。 我正在为JPanel画一个方形图形,然后尝试 使用重绘来移动它
let number: UInt64 = 111
let mostSignificantBit = _lzcnt_u64(number)
print(mostSignificantBit)
我不知道调用更新功能的原因是什么 不过。
它以50x和50y绘制正方形,将其设置为0x和0y 当我打电话给我重复的时候,我预料到它 移动到它的新坐标,虽然它仍在 50x和50y。
为什么会这样?
答案 0 :(得分:1)
您的解决方案是使用KeyBindings。
https://docs.oracle.com/javase/tutorial/uiswing/misc/keybinding.html
还有。 您需要创建一个Swing Timer,Thread或Loop来管理要绘制的帧。等等
以下是Swing Timers的链接,因为它们很容易实现:
https://docs.oracle.com/javase/tutorial/uiswing/misc/timer.html
我看到很多程序都有这个(AKA。使用线程。):
SwingUtilities.invokeLater(new Runnable() {
public void run() {
createAndShowGUI();
}
});