입력 데이터 스트림을 사용하여 텍스트에서 자바 출력 문서 인터페이스에서 만든 읽어 진정한 선택 또는 False

입력 및 출력 스트림을 학습 한 후 작은 프로그램을했다

데이터를 읽은 후 선택 GUI 참 또는 거짓을 만들려면

마지막으로, 종료 버튼이 변경되었습니다, 마지막 말은 큰 영향을 변경되지 않았습니다

아아! 그래서이 될! !

우리는 볼 것이다!

com.Grap 패키지;


수입 java.awt.BorderLayout의;
수입 java.awt.Container의;
수입 java.awt.FlowLayout의;
수입 java.awt.GridLayout의;
수입 java.awt.event.ActionEvent의;
수입 java.awt.event.ActionListener;
수입 java.awt.event.ItemEvent에;
수입 java.awt.event.ItemListener에;
수입 java.io.BufferedInputStream의;
수입 java.io.BufferedReader의;
수입 java.io.FileNotFoundException;
수입 java.io.FileOutputStream의;
수입 java.io.FileReader;
수입 때 java.io.IOException;


수입 javax.swing.ButtonGroup;
수입 javax.swing.JButton;
수입 javax.swing.JFrame;
수입 javax.swing.JLabel;
수입 javax.swing.JPanel;
수입 javax.swing.JRadioButton;
수입 (듯이) javax.swing.JScrollPane;
수입 javax.swing.JTextArea;


Public 클래스 javaIODemo JFrame의 구현은 확장 된 ActionListener ItemListener에 {
JPanel과의 P1, P2, P3, P4;
JLabel의 jlQuestion, jlSelect, jlScore;
하는 JButton startbutton, nextbutton, stopButton이라는;
JTextArea에 텍스트 영역;
하는 JScrollPane 스크롤;
JRaioButton에 버튼 [];
ButtonGroup의 buttongroup;
의 BufferedReader BR;
문자열 대답; 무효 표시 () {IOException이 발생 P1 = JPanel의 새로운을 (); P2는 새로운 인 JPanel을 () =; P3 = 새로운 JPanel의 () P4 = 새로운 JPanel의 (); jlQuestion는 ( "题目")를 신규의 JLabel =; jlSelect는 ( "选项")를 신규의 JLabel =; jlScore 신규의 JLabel를 ( "") =; startbutton = 새의 JButton ( "开始");








nextbutton = 새의 JButton ( "下一题");
= stopButton이라는 새로운의 JButton를 ( "结束");
텍스트 영역은 새로운 JTextArea에 (3,30)를 =;
르페 = 새로운 JScrollPane의 (텍스트 영역);
버튼을 JRadioButton의 새로운 = [4];
buttongroup = 새로운 ButtonGroup ();
{위해 (I ++; I <4 INT I = 0)
[I] = JRadioButton의 새로운을 ( "") 버튼;
buttongroup.add (버튼 [I]);
버튼 [I] .addItemListener (이);
}
BR 신규의 BufferedReader (새을 FileReader ( "G : \\ text.txt를")) =;
INT m = 0;
br.mark (m);
컨테이너 C = getContentPane (); //上部添加
p3.add (jlQuestion);
p3.add (르페);
c.add (P3, BorderLayout.NORTH); p1.setLayout (새 GridLayout과 (2,1)); //中心添加p1.add (P4); p1.add (jlScore); p4.add (jlSelect);




위한 (INT 난 = 0; I <4; I ++) {
p4.add (버튼 [I]);
}
(P1, BorderLayout.CENTER)를 c.add;
// p2.setLayout (새 FlowLayout의 ());
p2.add (startbutton); //下部添加
p2.add (nextbutton);
p2.add (stopButton이라는);
c.add (P2, BorderLayout.SOUTH);
에는 setSize (400, 300);
의 setDefaultCloseOperation (의 JFrame.EXIT_ON_CLOSE);
는, setVisible (TRUE);
startbutton.addActionListener (이);
nextbutton.addActionListener (이);
stopbutton.addActionListener (이);
}
공개 무효 showquestion ()는 예외가 발생 {
textarea.setText (br.readLine ());
위한 (INT 난 = 0; I <4; I ++) {
버튼 [I] .setText (br.readLine ());
버튼 [I] (TRUE) .setEnabled;
}
답을 br.readLine () =;
jlScore.setText ( ""); } @Override 공개 공극은 (는 ItemEvent 전자) {의 itemStateChanged // TODO 자동 생성 방법 스텁 대 (INT를 난 = 0; i가 <4; I ++) { 만약 (버튼 [I]는 .isSelected ()) 의 경우 ((INT) 답 .charAt (0) == I + 65) jlScore.setText ( "恭喜你,答对了"); 다른 jlScore.setText ( "答案错误!"); } } @Override 공개 무효의 actionPerformed (ActionEvent의 전자) { // TODO 방법 스텁을 자동 생성 하는 경우 (e.getSource () == startbutton || e.getSource () == nextbutton) { {시도 showquestion (); } 캐치 (예외 E1) { e1.printStackTrace (); } } 경우 (e.getSource () == stopButton이라는) {





























(FALSE) startbutton.setEnabled;
nextbutton.setEnabled (FALSE);
// 대해 (INT 내가 = 0; I <4; i가 ++) {
// 만약 (버튼 [I] .isSelected ())
// 버튼 [I] .setSelected (FALSE);
//// 버튼 [I] .setEnabled (FALSE);
// }
stopbutton.setOpaque (TRUE);
stopbutton.addActionListener (이);
}
} 공공 정적 무효 메인 (문자열 [] 인수)는 예외를 발생 { // TODO 자동 생성 방법 스텁 (새 javaIODemo ())을 디스플레이 ().; }






}








그것을 할 마지막은 경우입니다! !

나는 당신이 채택 바랍니다! !


게시 19 개 원래 기사 · 원 찬양 58 ·은 50000 +를 볼

추천

출처blog.csdn.net/cyg_l02/article/details/80344891