所以我有一個大學項目使用 swing 制作繪畫程序,我需要清除 Graphics 對象,但是從外部類中的方法中清除,然后在我通過此傳遞圖形對象時再次繪制所有形狀(刷新圖形對象)方法 。該類負責保存我在此圖形上繪制的所有形狀(在 ArrayList 中)。那么,如果我無法調用 Jpanel 類中存在的 Super.paintComponent ,我該怎么做呢?
2 回答

qq_遁去的一_1
TA貢獻1725條經驗 獲得超8個贊
因為我通過此方法傳遞圖形對象。
您不應該傳遞 Graphics 對象。PaintComponent() 方法(或調用的任何方法)應始終使用傳遞給 PaintComponent() 方法的 Graphics 對象。
那么,如果我無法調用 Jpanel 類中存在的 Super.paintComponent ,我該怎么做呢?
在進行自定義繪畫的類中,您創建一個clear()
方法。這將簡單地從 ArrayList 中刪除所有 Shape 對象,然后調用 repaint()。
添加回答
舉報
0/150
提交
取消