Java.awt.event.actionlistener 를 가져옵니다.
Java.awt.event.keyevent 를 가져옵니다.
Java.awt.event.keylistener 를 가져옵니다.
Javax.swing.jbutton 을 가져옵니다.
Javax.swing.jframe 을 가져옵니다.
Javax.swing.jlabel 을 가져옵니다.
Javax.swing.jmenu 가져오기
Javax.swing.j menubar 가져오기
Javax.swing.j menuitem 가져오기 :
Javax.swing.joptionpane 을 가져옵니다.
Javax.swing.jpanel 을 가져옵니다.
Javax.swing.jtextarea 가져오기 :
Javax.swing.jtextfield 가져오기 :
Javax.swing.event.caretevent 를 가져옵니다.
Javax.swing.event.caretlistener 를 가져옵니다.
공용 클래스 게스트 확장 JFrame{
Private int 개수;
개인 문자열 RS =
개인 JTextField TRS
개인 JTextField tinput
개인 JTextArea ta
개인 int a;;
개인 int b;;
개인 JLabel 메시지;
공용 정적 void main(String[] args) {
새로운 추측 ();
}
대중의 추측 () {
Initmenu ();
JLabel l 1=new JLabel ("최종 결과");
Trs = new jtextfield (5);
Trs.seteditable (false);
Trs.set enabled (false);
JLabel l2=new JLabel ("숫자를 입력하십시오");
Tinput = new jtextfield (5);
Tinput.seteditable (false);
Ta = new jtextarea (8,30);
Ta.set editable (false);
Final jbutton ok = new jbutton ("ok");
Ok.set enabled (false);
Jpanel pa = new jpanel ();
Add(pa, "중심");
Pa.add (l1);
Pa.add (TRS);
Pa.add (L2);
Pa.add (t 입력);
Tinput.addcaretlistener (new caretlistener () {
공용 유효하지 않은 care update(care event e){
If(validate_input ())
Ok.setEnabled (참);
기타
Ok.set enabled (false);
}
});
T input.addkeylistener (new keylistener () {
공용 void 키 (키 이벤트 e) {
If (e.getkeycode () = = = keyevent. VK _ 캐리지 리턴)
Ok.doclick ();
}
Public void key released (키 이벤트 arg 0) {
// TODO 자동으로 생성된 메소드 스텁
}
Public void keytyped (키 이벤트 arg 0) {
// TODO 자동으로 생성된 메소드 스텁
}
});
Pa.add (ok);
Pa.add (ta);
Msg=new JLabel ("메뉴를 클릭하여 게임을 시작하십시오.");
Pa.add (msg);
Ok.addActionListener (새 ActionListener(){
Public void action performed (actionevent e) {
Setab ();
Count++;+;
Ta.setText(ta.getText()+ "첫 번째" +count+ "하위 시도:"+tinput.gettext ()+"> > & gt>>>>> >+a+"a"+b+"b \ n);
Tinput.settext ("");
If(count==6){
Joptionpane.show messagedialog (null, "게임 끝");
Tinput.seteditable (false);
Msg.setText ("게임을 시작하려면 메뉴를 클릭하십시오.");
Tr.settext (RS);
Rs =
}
If(a==4){
Joptionpane.show message dialog (널, "네가 이겼다");
Tinput.seteditable (false);
Msg.setText ("게임을 시작하려면 메뉴를 클릭하십시오.");
Tr.settext (RS);
Rs =
}
A = 0;; B = 0;;
}
});
Setsize (350,300);
Setlocation (500,300);
Setdefaultcloseoperation (exit _ on _ close);
Setvisible (true);
}
Public void initMenu(){
Jmenubar MB = new jmenubar ();
Jmenu m = new jmenu ("function");
Mb.add (m);
Jmenuitem mi1= new jmenuitem ("게임 시작");
Jmenuitemmi2 = new jmenuitem ("exit");
M. add (mi1);
M. add (mi2);
Mi 1.addActionListener (새 ActionListener(){
Public void action performed (actionevent e) {
Begin ();
}
});
Mi2.addActionListener (새 ActionListener(){
Public void action performed (actionevent e) {
Dispose ();
}
});
Mb.setvisible (true);
Add(mb, "북쪽");
}
Public void begin(){
For(int I = 0;; Rs.length () < 4; I++){
Intran = (int) (math.random () *10);
만약 (! Rs.contains(String.valueOf(ran)))
Rs+= string.value of (ran);
}
Trs.settext ("* * * *");
Tinput.seteditable (true);
Count = 0;;
Ta.setText (비어 있음);
Msg.setText (비어 있음);
}
공용 부울 validate_input(){
Stringinput = tinput.gettext ();
Input.matches ("\ \ d {4}") 를 반환합니다.
}
공용 void setAB(){
Stringinput = tinput.gettext ();
For(int I = 0;; 나<4; I++){
If (rs.charat (I) = = input.charat (I))
A++;+;
}
문자열 플래그 = "";
For(int I = 0;; 나<4; I++){
For(int j = 0;; J<4; J++)
If (rs.charat (I) = = input.charat (j) & & amp! Flag.contains (input.substring (j, j+1)) {
B++;+;
Flag+=input.substring(j, j+1);
}
}
B-= a;
}
}