게시판 즐겨찾기
편집
드래그 앤 드롭으로
즐겨찾기 아이콘 위치 수정이 가능합니다.
[본삭금]자바 스윙 이벤트처리시 다른클래스 접근관련 질문
게시물ID : programmer_11833짧은주소 복사하기
작성자 : 생주
추천 : 0
조회수 : 1121회
댓글수 : 2개
등록시간 : 2015/07/03 03:55:19
옵션
  • 본인삭제금지
제가 집에서 자바 공부를 하고있는데요 

하다가 문득 궁금해져서 궁금증을 해결코자 질문드립니다

일단 지금 짜고있는 건 스윙을 사용하여 1~9까지 숫자를 출력하는 MyPanel클래스를만들고

MyFrame클래스에서 재설정 버튼을 만들어 클릭시 숫자를 랜덤하게 재설정 하는식으로 만들고있습니다.

그런데 같은 클래스 내에 있을경우 무리 없이 바뀔거 같지만 이걸 다른 클래스로 옮겨 놓으니 문제가 생겨서 이걸 해결할 수 있는 방법이 없을까하여
질문 드립니다.

일단 제가 독학을 하다보니 코딩자체도 깔끔치못하고 많이 부족하다보니 살짝 야매(?)식으로 짜긴짯는데 해결좀 해주시면 감사하겠습니다.
===================================================================================================================================
package sadas;

import java.awt.BorderLayout;
import java.awt.Dimension;
import java.awt.GridLayout;
import java.awt.Toolkit;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

import javax.swing.AbstractButton;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JPanel;

import java.nio.ByteOrder;
import java.util.Random;
class MyPanel1 extends JPanel{
Random rd=new Random();
JButton btnt=new JButton("Test");
JButton btn=new JButton();
public MyPanel1(){
setLayout(new GridLayout(4,3));
JButton []btn1={
btn,btn,btn,btn,btn,btn,btn,btn,btn
};
int []x=new int[9];
for(int i=0;i<9;i++){
x[i]=rd.nextInt(9)+1;
for(int j=0;j<i;j++){
if(x[i]==x[j]){
i--;
}
}
}
for(int i=0;i<9;i++){
btn1[i]=new JButton(x[i]+"");
this.add(btn1[i]);
}
this.add(new JButton());
this.add(btnt);
this.add(new JButton());

}
}

class MyFrame extends JFrame{
MyPanel1 p=new MyPanel1();
public MyFrame(){
Toolkit kit = Toolkit.getDefaultToolkit();
Dimension screen = kit.getScreenSize();
int sx=screen.width;
int sy=screen.height;
int x=400,y=300;
setSize(x,y);
setLocation((sx-x)/2, (sy-y)/2);
setLayout(new BorderLayout());
JButton btn=new JButton("재설정");
btn.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
if(btn==e.getSource()){
}
}
});
this.add(btn,BorderLayout.SOUTH);
this.add(p,BorderLayout.CENTER);
setVisible(true);
}
}



public class MainFrame {

public static void main(String[] args) {
// TODO Auto-generated method stub
MyFrame f=new MyFrame();
}

}
das.PNG

전체 추천리스트 보기
새로운 댓글이 없습니다.
새로운 댓글 확인하기
글쓰기
◀뒤로가기
PC버전
맨위로▲
공지 운영 자료창고 청소년보호