2016-07-27 5 views
-1

私はプレイヤーに自分のゲームを保存するためにファイルディレクトリを選択させたいゲームプログラムを持っています。私はJFileChooserを使用していますが、これは完全にうまく動作しますが、終了しません。ここJava JFileChooserは死ぬでしょう

はコードです:

public NewGameState(Game game) { 
    super(game); 

    open = new JButton(); 
    fc = new JFileChooser(); 
    fc.setCurrentDirectory(new java.io.File(".")); 
    fc.setDialogTitle("Choose file for the new world"); 
    fc.setFileSelectionMode(JFileChooser.DIRECTORIES_ONLY); 

} 

public void tick() { 

    input(); 
    selection(); 
} 

public void render(Graphics g) { 

    drawSelection(g); 
    drawGUI(g); 
} 

private void input(){ 

    if(game.getKeyManager().up){ 

     selection --; 
    }else if(game.getKeyManager().down){ 

     selection ++; 
    } 

    if(game.getKeyManager().space){ 

     if(selection == 0){ 

      fileChooser();  //calling fileChooser method when pressing space 
     }else if(selection == 1){ 

     }else if(selection == 2){ 


     } 
    } 
} 

private void selection(){ 
    //blahbahabahaa 
    } 
} 

//fileChooser 
private void fileChooser(){ 

    fc.showOpenDialog(null); 
} 

私はスペースが真であり、それはすべてのそれは刻々と過ぎproccessを停止し、コードの読み取りを停止しません判明ティックコードを実行し続けることを考えました。メソッドを何度も何度も読み続ける。私がこのプログラムでパネルを使用していないパネルを使用している他の答えは、私はcanvasjframeのみ

答えて

1

を使用していますこれはファイルを選択した後にファイル選択ダイアログを閉じることができる場合ファイルを保存します。ちょうどまだコードをより説明してみてください私はこれが私が何を説明したかについての私の理解に基づいているべきだと思います

int c = fileWindow.showSaveDialog(this); 
     if(c==JFileChooser.APPROVE_OPTION) 
      files.append(fileWindow.getSelectedFile()+"\n"); 
関連する問題