【问题标题】:ChartPanel not fiting the size of a JPanel (JFreeChart)ChartPanel 不适合 JPanel (JFreeChart) 的大小
【发布时间】:2017-07-25 04:18:10
【问题描述】:

我只是在使用 ChartPanel 的 setSize 方法。由于某种原因,它无法正常工作。代码如下:

    mostSoldPanel = new JPanel();
    chartTabbedPane.addTab("Mais vendidos", null, mostSoldPanel, null);
    mostSoldChart = ChartFactory.createBarChart("Mais vendidos", "Produtos", "Quantidade", createDataset(),
            PlotOrientation.VERTICAL, true, true, false);

    ChartPanel chartPanel = new ChartPanel(mostSoldChart);
    mostSoldPanel.add(chartPanel);
    chartPanel.setSize(mostSoldPanel.getSize());

这是视觉效果:

【问题讨论】:

  • 考虑将mostSoldPanel = new JPanel(); 更改为mostSoldPanel = new JPanel(new BorderLayout()); 并摆脱get/setSize 调用

标签: java swing jpanel jfreechart


【解决方案1】:

可能的原因是JPanel 默认使用FlowLayout,这允许子组件在布局时使用自己的preferredSize

考虑将mostSoldPanel = new JPanel(); 更改为mostSoldPanel = new JPanel(new BorderLayout()); 并摆脱get/setSize 调用

【讨论】:

  • 工作就像一个魅力。看来我的 Java 有点生疏了。谢谢!
猜你喜欢
  • 2013-02-15
  • 1970-01-01
  • 2012-09-28
  • 1970-01-01
  • 2021-12-11
  • 2011-08-13
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多