首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >圆形JPanel Swing

圆形JPanel Swing
EN

Stack Overflow用户
提问于 2010-02-26 16:49:29
回答 2查看 6.9K关注 0票数 0

我试图在我的图形用户界面中显示一个圆形对象,这个圆形对象应该包含一些标签,因此我认为这个圆形对象应该扩展JPanel。有谁知道怎么做一个圆形的JPanel吗?或者至少是一个画了一个椭圆形并在椭圆形中心放置了几个JLables的JPanel?

谢谢

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2010-02-26 17:11:22

要绘制圆,请创建JPanel子类并重写paintComponent

代码语言:javascript
运行
AI代码解释
复制
public class CirclePanel extends JPanel {

    @Override
    protected void paintComponent(Graphics g) {
        g.drawOval(0, 0, g.getClipBounds().width, g.getClipBounds().height);
    }
}

看起来像这样:

alt text http://img246.imageshack.us/img246/3708/so2343233.png

要放置标签,您可以使用GridBagLayout,希望这是您想要的:

代码语言:javascript
运行
AI代码解释
复制
CirclePanel panel = new CirclePanel();

panel.setLayout(new GridBagLayout());

GridBagConstraints gc;

gc = new GridBagConstraints();
gc.gridy = 0;
panel.add(new JLabel("Label 1"), gc);

gc = new GridBagConstraints();
gc.gridy = 1;
panel.add(new JLabel("Label 2"), gc);

alt text http://img694.imageshack.us/img694/4013/so23432332.png

票数 7
EN

Stack Overflow用户

发布于 2010-02-26 17:16:21

在O‘’Reilly的Swing Hacks一书中,有一个针对透明和动画窗口#41的技巧。源代码可以从http://examples.oreilly.com/9780596009076/下载

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2343233

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档