自动读取文件 - 简单

时间:2013-04-26 09:56:28

标签: graph plot readfile

这应该是一个非常简单的问题,但我似乎无法完成它,我有一段代码计算图表上的X Y点,然后将它们保存到文件中。

如果满足某个条件,我想在图表上绘制值,我使用此代码绘制图形 - http://www.kodejava.org/examples/805.html

但我不希望它要求用户指向文件位置,我只是想让它打开一个硬编码目录的文件,并自动绘制。所以基本上删除顶部的按钮并自动执行按钮的命令。

如果有人能指出我正确的方向,那将是很棒的,我是一名物理学家,而不是编码专家,所以尽可能多的帮助会非常好。

希望我能在某个时候帮助你们中的一个。

1 个答案:

答案 0 :(得分:0)

1)在public static void main内,正好在frame.setVisible(true); openButton.setVisible(false);

之上

2)在class GraphPanel内,方法public void actionPerformed(ActionEvent e)内插入datapanel.actionPerformed(e);作为第一行。

3)class DataPanel内的public void actionPerformed内注释从JFrame fileFrame = new JFrame();initialized = readFile(datafile);

4)在评论之后,插入initialized = readFile(new File("path_to_data_file"));

现在,如果您打开并按下绘图,将会读取硬编码文件并绘制绘图。

哎呀,我不在乎这是否会被贬低:)。我从未接触过Java。在阅读了您的问题之后,特别是I'm a physicist not a coding expert我首先在谷歌中搜索了如何编译和运行java文件。然后开始阅读java程序。我甚至还制作了另一个不需要按下按钮的版本,只需打开即可绘制图形。但只有在需要时才提供,然后提供。 "欢迎来到我的java尝试" :)

更新

在没有按下绘图的情况下,在GraphPanel和DataPanel中执行,并将actionPerformed方法重命名为GraphPanel::start_workingDataPanel::start_working之类的其他内容现在在GraphPanel::start_working内调用{{1}而不是之前的DataPanel::start_working。如果是编译器cribs,请添加一些空datapanel.actionPerformed(e);进行编译。 (也许我们可以删除actionPerformed)现在您的流程已准备就绪,无需任何用户操作。你只需要启动它。因此,您设置implements以隐藏绘图按钮并调用plotButton.setVisible(false);以启动主流程。

更新

Inside GraphPanel

graphpanel.start_work();

在DataPanel内部

public void start_working() {
        datapanel.start_working()
        if (!datapanel.isInitialized()) {
            return;
        }
        datapanel.refreshData();
        panel.setDisplayPlot(true);
        panel.update(panel.getGraphics());
        frame.setSize(700, 600);
        frame.setVisible(true);
        frame.pack();
    }

在最后5行中

 public void start_working(ActionEvent e) {
        initialized = readFile(new File("PATH_TO_FILE");
        panel.update(panel.getGraphics());
        frame.pack();
        frame.setVisible(true);
    }