簡體   English   中英

Java中的自定義形狀

[英]Custom shape in Java

我想要實現的是這樣的:

 public void paint(Graphics g) {
    Graphics2D ga = (Graphics2D) g;      
    MyShape c = new MyShape();
    ga.draw(c);
}

我希望MyShape類包含在其中繪制帶有數字的圓所需的信息。

因此,我想我需要創建某種容器/組件,並在其中繪制所需的內容(圓圈和數字),然后將其進一步傳遞給我上面粘貼的方法。

問題是我不知道該擴展哪個類……以及故事的其余部分。

形狀就是:形狀。 圓是形狀。 矩形是一個形狀。 但是里面有數字的圓不是形狀。 我的猜測是您實際上想要這樣的東西:

public class CircleWithNumberInside extends JComponent {
    @Override
    protected void paintComponent(Graphics g) {
        // TODO draw a circle, and draw a number inside it.
    }
}

您當然可以自己實現Shape接口,但是當您可以使用現有的子類(例如Ellipse2D時,則不需要。 只需使用相同的widthheight值構造它。 這里有一個例子這里演示了如何在中心任意字形Ellipse2D.Double

您必須擴展Shape類,該類必須在內部重寫paintComponent,以便Graphics2D對象知道要繪制的內容。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM