DAGからクリティカルパス法を計算するプログラムを実行しています。プログラムロジックは完璧ですが、グラフィカルユーザーインターフェイスを統合しようとすると問題が発生します。このインターフェイスでは、JFileChooserを使用してプログラムの入力ファイルを選択できますが、メインアクションにある関数「readfile」にそのパラメーターを渡す方法がわかりません。
ボイドメインのコードは次のとおりです。
public static void main(String args[]) {
java.awt.EventQueue.invokeLater(new Runnable() {
public void run() {
JFrameConFondo jf = new EjemploJFrameConFondo();
jf.setLocationRelativeTo(null);
jf.setTitle("CPM");
jf.setVisible(true);
readfile(route);
////I need to pass a filename to the program which calculate the critical path,
}
});
}
}
関数「readfile」のコードは次のとおりです。
public static void leer_archivo(String fileName){
try{
File archivo=new File(fileName);
FileReader fr= new FileReader(archivo);
BufferedReader br= new BufferedReader(fr);
String linea;
linea=br.readLine();
c=Integer.parseInt(linea);
for(int i=0;i<c;i++){
CrearCaso(br, i+1);
}
}catch(Exception e){
}
}
私はファイル選択のためのインターフェースのボタンに対してこのアクションを実行しています。そのファイルの名前を何らかの方法でvoidmainに送信して、関数「readfile」を使用できるようにしたいと思います。
private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton1ActionPerformed
JFileChooser filechooser = new JFileChooser();
int option = filechooser.showOpenDialog (this);
if (option==JFileChooser.APPROVE_OPTION){
cajaTexto.setText(filechooser.getSelectedFile().getPath());
}
誰かが私にこれを手に入れてくれることを願っています。私はこれに数日間立ち往生していて、私は世界のJavaで本当に新しいです。いくつかのクラスと数行のコードがあるため、コード全体を入れませんでした。