현재 위치 - 주공해몽공식사이트 - 랜덤 번호 뽑기 점술 - 서둘러, JAVA 로 숫자를 추측하는 작은 게임을 만들어라.

서둘러, JAVA 로 숫자를 추측하는 작은 게임을 만들어라.

Java.awt.event.actionevent 가져오기

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;

}

}