자바 JFrame에서 JTextArea 출력문제;;;
쌍둥이자리
거의 완성
실행했을때 jtextarea가 화면에 바로 뜰대도 있고 안뜰때도 있어요;;;
실행창을 클릭해줘야 jtextarea가 보이네요;;;
왜그런지 모르겠어요;;;;문제 화면입니다.
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import java.util.*;
class jframetest extends jframe implements actionlistener{
jbutton generation, delete, exit;
jtextarea ta;
jpanel p;
int count = 0;
public jframetest(){
super(로또 자동 생성기);
setsize(400,300);
setvisible(true);
setdefaultcloseoperation(jframe.exit_on_close);
setlayout(new borderlayout());
p = new jpanel();
generation = new jbutton(로또번호 생성);
p.add(generation);
generation.addactionlistener(this);
delete = new jbutton(로또번호 삭제);
p.add(delete);
delete.addactionlistener(this);
exit = new jbutton(프로그램 종료);
p.add(exit);
exit.addactionlistener(this);
add(p, north);
ta = new jtextarea(로또번호 생성 프로그램입니다.\n);
//add(ta, center);
add(new jscrollpane(ta), center);
}
public void actionperformed(actionevent e){
if(e.getsource() == generation){
ta.settext(ta.gettext() + genlotto(++count));
}
else if(e.getsource() == delete){
ta.settext(로또번호 생성 프로그램입니다.\n);
count = 0;
}
else if(e.getsource() == exit){
dispose();
system.exit(0);
}
}
public string genlotto(int count){
string lottonum = ;
int []lottocheck = new int[6];
int i, j, num;
boolean overlap = false;
random randomnum = new random();
lottonum += \n + count + 번째 번호 생성 : ;
for(i=0; ilottocheck.length; i++){
num = randomnum.nextint(44) + 1;
lottocheck[i] = num;
overlap = true;
for(j=0; ji; j++){
if(lottocheck[j] == num){
overlap = false;
i--;
}
}
if(overlap){
lottonum += integer.tostring(lottocheck[i]);
if(i != lottocheck.length-1){
lottonum += - ;
}
}
}
lottonum += \n;
return lottonum;
}
}
public class lotto {
public static void main(string[] args){
new jframetest();
}
}