2013-06-03 1 views
2

JButton을 클릭 할 때 JLabel을 변경하고 싶습니다. 그것은 간단하게 들리지만 정말로 좋은 코드 조각을 찾을 수는 없습니다. 그래서파일에서 텍스트 읽기 및 JLabel에 넣기

. (괄호가없는 전체 코드 때문이 잘못 된 경우)

    final JButton continueGame = new JButton(); 
        continueGame.setPreferredSize(new Dimension(1000, 30)); 
        continueGame.setLocation(95, 45); 
        continueGame.setText("<html>Continue</html>"); 
        continueGame.addActionListener(new ActionListener(){ 
         @Override 
         public void actionPerformed(ActionEvent ev) { 
          panel.remove(continueGame); 
          SwingUtilities.updateComponentTreeUI(frameKontrastGame); 
           if(RandomNrJeden <= 50) 
           { 
            JOptionPane.showMessageDialog(frameKontrastGame, "Eggs are not supposed to be green."); 
            frameKontrastGame.setVisible(false); 

            JFrame frameScenario2 = new JFrame(); 
            frameScenario2.setTitle("Scenario2"); 
            frameScenario2.setSize(1000,700); 
            frameScenario2.setLocationRelativeTo(null); 
            frameScenario2.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); 


            JPanel panelScenario = new JPanel(); 
            panel.setLayout(new GridLayout(2, 1)); 




            final JLabel tekst = new JLabel(); 
            tekst.setText("<html>Część dialogu numer 1</html>"); 
            //JTextField dialog = new JTextField(20); 
            //dialog.setText("<html>Eggs are not supposed to be green.</html>"); 


            JButton OdpPierwsza = new JButton(); 
            OdpPierwsza.setText("<html>Opowiedź pierwsza</html>"); 
            OdpPierwsza.addActionListener (new ActionListener(){ 
             @Override 
             public void actionPerformed(ActionEvent ev) { 
             tekst.setText("<html>HERE I NEED A TEXT FROM FILE dialog.txt</html>"); 


             } 
             }); 


            //panelScenario.add(dialog); 
            panelScenario.add(tekst); 
            panelScenario.add(OdpPierwsza); 
            frameScenario2.getContentPane().add(panelScenario); 

            frameScenario2.setVisible(true); 

           } 

:

  • 이 어디에 "여기가 필요해 여기 내 코드의 일부입니다 파일에서 텍스트 dialog.txt "나는 어떤 종류의 독자가 필요합니다. 가장 좋은 방법은 텍스트를 한 줄씩 읽는 것입니다. 나는 그것을 쓰는 방법을 찾지 못한다.
  • JPanelJLabel을 추가해야합니다.
+0

BufferedReader를 사용해 보셨습니까? – dosdebug

+1

"java read text from file"을 검색하면 SO와 선택한 모든 검색 엔진에서 많은 답변과 예제를 찾을 수 있습니다. 여기 하나의 게시물입니다. 허용 된 대답을 확인하십시오 http://stackoverflow.com/questions/16104616/using-bufferedreader-to-read-text-file –

+1

당신은 BufferedReader br = new BufferedReader (새로운 FileReader ("your_file.txt") 줄을 한 줄씩 읽으십시오. 문자열 줄; 줄 = br.readLine(); while (줄! = null) {줄 = br.readLine; // 레이블에 줄을 추가하십시오. area)} –

답변

1

당신은

BufferedReader br = new BufferedReader(new FileReader("your_file.txt")); 
String line = br.readLine(); 
ArrayList<String> listOfStrings = new ArrayList<>(); 
listOfString.add(line); 

while(line != null) 
{ 
    line = br.readLine(); 
    listOfString.add(line); 
} 

를 사용하여 하나의 문자열로 파일을 읽고 지금 JList의 반복과 JLabel의 텍스트를 추가하기위한 루프를 할 수 있습니다. JTextArea가 더 좋습니다.

+0

JTextArea 또는 JTextPane을 선호합니다! –