【问题标题】:Drawing and filling in shapes绘制和填充形状
【发布时间】:2015-03-28 12:20:01
【问题描述】:

如何绘制和填充形状?例如,drawRect 用你选择的任何颜色绘制一个矩形,但它的中间没有颜色,而 fillRect 用你选择的任何颜色填充一个矩形,但它的边框没有颜色。你如何结合drawRect和fillRect?谢谢。

【问题讨论】:

    标签: java swing graphics awt shapes


    【解决方案1】:

    先填充矩形,然后在上面绘制。

    class MyCanvas extends JComponent {
    
        public void paint(Graphics g) {
            g.fillRect(x, y, width, height);
            g.drawRect(x, y, width, height);
        }
    }
    

    【讨论】:

    • 你是个天才。谢谢。
    • 1) 为自定义绘制 JComponent 覆盖的正确方法是 paintComponent(..) 2) 应立即调用 super 方法以绘制 BG 并擦除任何先前的绘图。 3) 自定义组件最好从getPreferredSize() 返回一个合理的大小,以帮助布局管理器知道要授予它的大小。 4) 在适当的情况下使用@Override 表示法也是一种很好的做法。
    • 正确,我的目的是展示如何绘制圆角矩形而不是完整的 JComponent。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2019-11-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多