2013-02-24 62 views
0

我要使用Java構建一個繪圖程序(類似MS畫圖)。我已經能夠使用Swing庫在JFrame上繪製基本形狀,但它們是靜態的,我無法對它們做任何事情。因此,我想使每個形狀的對象,將存儲我們需要操縱,如大小,旋轉,改變顏色,導出到JPEG圖像等所有信息。OOP:創建一個對象來繪製圖片

所以我想創建一個Image類的子類矩形,橢圓形等。每個子類都有一個Points(x,y)數組,以便我們可以操縱每個點。所以如果我想刪除一部分形狀,我只需要刪除某些點。移動形狀將僅僅改變點的位置。這是計劃,但我不知道它有多可能。

任何人都可以使用了這種類型的程序的經驗給我一些建議之前,我去編碼更深?

回答

0

如果調用repaint();方法,你可以設置x和y如先前放入的整數數組。然後,一旦選擇的錨點被拖動以適合選擇的x和y,就更改這些整數。但是,再一次,你需要知道如何拖動一個對象。如果添加了鼠標偵聽器和感應如果X和Y是你的錨(你可以使用不平等像(the clicked x) > (anchor X) && (the clicked x < ((anchor X) + anchor width)和同爲年。然後,當鼠標移動時,其移動到鼠標X和鼠標Y,然後等待直到鼠標完成拖動並將其移動是被選中的存儲鼠標x和y。中提琴形象!