我正在尝试可视化公交服务计划。为此,我需要创建一个至少 2900 像素宽的图形面板(以显示 24 小时,1 像素 = 30 秒)。首先,我尝试使用“普通”JFrame,但这不想创建一个与我的监视器更宽的窗口,即使我将大小设置为 2900。然后我尝试使用滚动条来解决这个问题,但我在那里现在被困住了。 我在java方面经验不是很丰富,我只有一个初学者课程,它告诉我小程序的基本知识,但仅此而已。 希望您能帮助我,提前谢谢!
JFrame f = new JFrame();
f.setSize(1000, 800);
JPanel panel= new JPanel();
panel.setSize(2900,800);
panel.setPreferredSize(new Dimension(2900,800));
Planzeichner dp = new Planzeichner(Umläufe);
panel.add(dp);
JScrollPane scPa = new JScrollPane (panel, ScrollPaneConstants.VERTICAL_SCROLLBAR_AS_NEEDED,ScrollPaneConstants.HORIZONTAL_SCROLLBAR_ALWAYS);
f.getContentPane().add(scPa);
f.setVisible(true);
```
不要创建该大小的 JFrame。相反,创建一个 JPanel。教它(阅读:覆盖方法或添加子组件)来显示您需要的内容。设置您的面板应支持的最小尺寸、首选尺寸和最大尺寸。
最后决定是否要在 JFrame 中使用该面板并使用 JFrame 的 pack() 方法相应地调整其大小,或者是否在将其添加到 JFrame 之前将其填充到 JScrollPane 中。