java - 如何在JPanel上绘制 "Gantt Chart"?

标签 java swing netbeans charts paintcomponent

我正在尝试实现CPU调度算法...我正在使用java swing(不是运行时设计)

这是我的主表单的外观: 我通过从 swing 容器/控件/菜单中拖动组件并将它们放在 JFrame 上来设计它。

我的 FCFS 选项卡主面板上有一个 JPanel。我想在该面板上绘制“甘特图”(如图所示)。我已经阅读了很多教程并实现了很多有关绘制线条的示例,但我不知道如何在代码中使用 @Override painComponent() 方法,因为所有变量并且方法是自动生成的(我使用 NetBeans IDE),并且无法找到我的 JPanel (我想在其上画线)。

enter image description here

我想画一张像这样的“甘特图”。当用户输入多个进程的 CPU 突发并按下“计算”按钮时,它将自动生成。如果用户为每个进程输入“10 ms”突发,将生成当前图表。

enter image description here

在这张图中,我试图解释我在 JFrame 上添加的组件序列及其变量名称。

enter image description here

我正在寻找过去 15 天的解决方案...但我陷入了这个问题...请帮助我解决这个问题。

请帮帮我...

最佳答案

其中的关键是首先了解 Swing 如何使用 MVC 模式,已检查 here 。就像 JTable听其TableModel ,一个JFreeChart甘特图监听它自己的CategoryDataset,如图所示 herehere .

重写 TableModel 中的 setValueAt() 并相应地更新您的 CategoryDatasetJTable 和甘特图都会相应更新。如果需要,您可以更改GanttRenderer如图here .

同时debatable ,我建议在开发的这个阶段手动编码而不是 GUI 构建器?如果您选择构建器,请按照 here 的概述限制范围。 .

关于java - 如何在JPanel上绘制 "Gantt Chart"?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30139293/

相关文章:

java - 如何使用drawString和drawImage实现游戏的Java swing GUI启动屏幕?

java - 如何创建随机怪物

java - 如何将 Swing 组件添加到另一个 JFrame 中?

java - 以表格格式将数据写入文本文件

java - 如何对 GL_TRIANGLE_STRIP 进行纹理处理?

java - 从字符串中提取字符和单词

java - 为什么我的 Java swing 应用程序行为异常?

java - 检测 Java 项目 Cruft

java - @EnableOAuth2Sso 注释是否符合 OpenID Connect 标准?

java - netty中处理HTTP客户端异常