2013-04-25 10 views
-1

안녕하세요 저는 텍스트 파일에서 항목을 나열하도록 콤보 상자를 가져 오는 데 어려움을 겪고 있습니다. 그리고 그 동안 나는 combobx를 바꿀 때 radioButton이 동적으로 변경되는지 또는 너무 많은 문제가 될 것인지 묻고 싶습니다.콤보 상자에서 텍스트 파일 사용

import java.awt.GridLayout; 
import java.util.Arrays; 
import java.util.Scanner; 
import java.awt.event.*; 
import java.io.*; 
import javax.swing.*; 
import java.io.*; 

public class MovieSelection extends JFrame { 

private JRadioButton selection1; 
private JRadioButton selection2; 
private JRadioButton selection3; 
private JPanel moviePanel; 
private JLabel priceLabel; 

private JComboBox movieBox; 
private ButtonGroup bg; 

private String[] movieName = { "RED", "Taken", "Star Trek", "Star Wars", 
     "Avatar" }; 


public MovieSelection() { 
    super("Please select your movie"); 
    setSize(800, 400); 

    setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); 

    setLayout(new GridLayout(15, 4)); 

    setLocationRelativeTo(null); 
    // PrintWriter outputFile = new PrintWriter(TheMovies.txt); 
    buildMoviePanel(); 

    add(moviePanel); 

    setVisible(true); 

} 



private class MovieLists implements ActionListener { 
    public void actionPerformed(ActionEvent e) { 

     Scanner inputFile = new Scanner(TheMovies.txt); 

     while (inputFile.hasNext()) { 
      String nextMovieName = inputFile.nextLine(); 

     } 

     JComboBox cb = (JComboBox) e.getSource(); 
     String Themovie = (String) cb.getSelectedItem(); 

    } 

} 

}

+0

콤보 상자에서 전체 텍스트 파일을 원하십니까? – Apurv

+0

'actionPerformed' 메쏘드의'스캐너 입력 파일 = 새 검사기 (TheMovies.txt);' –

+0

'JComboBox movieLists = new JComboBox (TheMovies.txt); – Apurv

답변

1

당신은 표현으로 TheMovies.txt를 작성하고, 그래서 자바 컴파일러는 공공 정적 멤버를 포함 TheMovies을라는 클래스를 찾습니다은 txt을했다.

"TheMovies.txt" 

을하지만 당신은 Scanner constructorString를 통과 할 때, 해당 문자열 자체 검사 및 해석되지는 않습니다 : 당신이 정말로 문자열 리터럴 의미했다, 그래서 당신은 따옴표로 묶어야 할 필요가 무엇

파일 이름으로. 따라서 먼저 문자열에서 File 또는 Path 개체를 만들어야합니다.

Scanner inputFile = new Scanner(new File("TheMovies.txt")); 

선은

JComboBox movieLists = new JComboBox(TheMovies.txt); 

표현으로 해석되는 같은 이유로 잘못된 것입니다. 어쨌든 당신의 의도가 무엇인지 확신 할 수 없지만, 다음 단계를 직접 찾을 수 있기를 바랍니다. 그것은 파일 내용을 반복하고 콤보 상자를 한 번에 한 항목 만 채우는 선을 따라야합니다.

관련 문제