자바 텍스트필드 삽입 질문 드려요
개굴츼
진수다님이 올리신거 약간 손봐서 gui 배치가 지금 이렇게 되어있습니다.
여기서 추가버튼으로 입력받아 추가한 것이텍스트 필드창으로 보이도록 하고싶은데 어떻게 해야 하나요..
이런 방식으로요 ..ㅠㅠ
아직 생초보라 아는것이 거의없어요.. 도와주세요 흑
소스코드입니다.
import javax.swing.*;
import java.awt.event.*;
import java.awt.*;
import java.awt.container;
import java.awt.gridbagconstraints;
import java.awt.gridbaglayout;
import java.awt.insets;
import java.awt.event.actionevent;
import java.awt.event.actionlistener;
import java.util.arraylist;
import javax.swing.jbutton;
import javax.swing.jframe;
import javax.swing.jlabel;
import javax.swing.joptionpane;
import javax.swing.jtextfield;
public class address implements actionlistener
{
arraylist personslist;
jframe appframe;
jlabel jlbname, jlbaddress, jlbphone, jlbemail;
jtextfield jtfname, jtfaddress, jtfphone, jtfemail, tf;
jbutton jbbadd, jbnclear, jbnback, jbnforward, jbnexit;
string name, address, email;
int phone;
int recordnumber; // 이전 다음 버튼으로 navigate 한다
container contentpane;
public address()
{
name = ;
address = ;
email = ;
phone = -1 ;
recordnumber = -1;
creategui(); // gui 환경 구현
personslist = new arraylist();
}
public void creategui(){
appframe = new jframe(주소록 관리 프로그램);
contentpane = appframe.getcontentpane();
contentpane.setlayout(new gridbaglayout());
// contentpane에 구성 요소를 배치하고 jbutton에 액션 리스너를 설정
arrangecomponents();
appframe.setsize(300,300);
appframe.setresizable(false);
appframe.setvisible(true);
appframe.setdefaultcloseoperation(jframe.exit_on_close);
}
public void arrangecomponents()
{
jlbname = new jlabel(이름 : );
jlbaddress = new jlabel(주소 : );
jlbphone = new jlabel(전화번호(휴대폰) : );
jlbemail = new jlabel(e-mail : );
jtfname = new jtextfield(20);
jtfaddress = new jtextfield(20);
jtfphone = new jtextfield(20);
jtfemail = new jtextfield(20);
jbnback = new jbutton(이전);
jbnforward = new jbutton(다음);
jbbadd = new jbutton(추가);
jbnclear = new jbutton(초기화);
jbnexit = new jbutton(exit);
//초기화 구성 요소 추가
gridbagconstraints gridbagconstraintsx01 = new gridbagconstraints();
gridbagconstraintsx01.gridx = 0;
gridbagconstraintsx01.gridy = 0;
gridbagconstraintsx01.insets = new insets(5,5,5,5);
contentpane.add(jlbname, gridbagconstraintsx01);
gridbagconstraints gridbagconstraintsx02 = new gridbagconstraints();
gridbagconstraintsx02.gridx = 1;
gridbagconstraintsx02.insets = new insets(5,5,5,5);
gridbagconstraintsx02.gridy = 0;
gridbagconstraintsx02.gridwidth = 2;
gridbagconstraintsx02.fill = gridbagconstraints.both;
contentpane.add(jtfname, gridbagconstraintsx02);
gridbagconstraints gridbagconstraintsx03 = new gridbagconstraints();
gridbagconstraintsx03.gridx = 0;
gridbagconstraintsx03.insets = new insets(5,5,5,5);
gridbagconstraintsx03.gridy = 1;
contentpane.add(jlbaddress, gridbagconstraintsx03);
gridbagconstraints gridbagconstraintsx04 = new gridbagconstraints();
gridbagconstraintsx04.gridx = 1;
gridbagconstraintsx04.insets = new insets(5,5,5,5);
gridbagconstraintsx04.gridy = 1;
gridbagconstraintsx04.gridwidth = 2;
p; gridbagconstraintsx04.fill = gridbagconstraints.both;
contentpane.add(jtfaddress, gridbagconstraintsx04);
gridbagconstraints gridbagconstraintsx05 = new gridbagconstraints();
gridbagconstraintsx05.gridx = 0;
gridbagconstraintsx05.insets = new insets(5,5,5,5);
gridbagconstraintsx05.gridy = 2;
contentpane.add(jlbphone, gridbagconstraintsx05);
gridbagconstraints gridbagconstraintsx06 = new gridbagconstraints();
gridbagconstraintsx06.gridx = 1;
gridbagconstraintsx06.gridy = 2;
gridbagconstraintsx06.insets = new insets(5,5,5,5);
gridbagconstraintsx06.gridwidth = 2;
gridbagconstraintsx06.fill = gridbagconstraints.both;
contentpane.add(jtfphone, gridbagconstraintsx06);
gridbagconstraints gridbagconstraintsx07 = new gridbagconstraints();
gridbagconstraintsx07.gridx = 0;
gridbagconstraintsx07.insets = new insets(5,5,5,5);
gridbagconstraintsx07.gridy = 3;
contentpane.add(jlbemail, gridbagconstraintsx07);
gridbagconstraints gridbagconstraintsx08 = new gridbagconstraints();
gridbagconstraintsx08.gridx = 1;
gridbagconstraintsx08.gridy = 3;
gridbagconstraintsx08.gridwidth = 2;
gridbagconstraintsx08.insets = new insets(5,5,5,5);
gridbagconstraintsx08.fill = gridbagconstraints.both;
contentpane.add(jtfemail, gridbagconstraintsx08);
gridbagconstraints gridbagconstraintsx09 = new gridbagconstraints();
gridbagconstraintsx09.gridx = 0;
gridbagconstraintsx09.gridy = 4;
gridbagconstraintsx09.insets = new insets(5,5,5,5);
contentpane.add(jbnback, gridbagconstraintsx09);
gridbagconstraints gridbagconstraintsx11 = new gridbagconstraints();
gridbagconstraintsx11.gridx = 2;
gridbagconstraintsx11.gridy = 4;
gridbagconstraintsx11.insets = new insets(5,5,5,5);
contentpane.add(jbnforward, gridbagconstraintsx11);
gridbagconstraints gridbagconstraintsx10 = new gridbagconstraints();
gridbagconstraintsx10.gridx = 1;
gridbagconstraintsx10.gridy = 4;
gridbagconstraintsx10.insets = new insets(5,5,5,5);
contentpane.add(jbbadd, gridbagconstraintsx10);
gridbagconstraints gridbagconstraintsx15 = new gridbagconstraints();
gridbagconstraintsx15.gridx = 1;
gridbagconstraintsx15.insets = new insets(5,5,5,5);
gridbagconstraintsx15.gridy = 6;
contentpane.add(jbnclear, gridbagconstraintsx15);
gridbagconstraints gridbagconstraintsx16 = new gridbagconstraints();
gridbagconstraintsx16.gridx = 2;
gridbagconstraintsx16.gridy = 6;
gridbagconstraintsx16.insets = new insets(5,5,5,5);
contentpane.add(jbnexit, gridbagconstraintsx16);
jbbadd.addactionlistener(this);
jbnclear.addactionlistener(this);
jbnforward.addactionlistener(this);
jbnback.addactionlistener(this);
jbnexit.addactionlistener(this);
}
public void actionperformed (actionevent e){
if (e.getsource () == jbbadd){
addperson();
clear();
}
else if (e.getsource() == jbnforward){
displaynextrecord();
}
else if (e.getsource() == jbnback){
displaypreviousrecord();
}
else if (e.getsource() == jbnclear){
clear();
}
else if (e.getsource() == jbnexit){
system.exit(0);
}
}
// 추가 했을 때 저장 클래스 정의
public void addperson()
{
name = jtfname.gettext();
name = name.touppercase();
address = jtfaddress.gettext();
try
{
phone = integer.parseint(+jtfphone.gettext());
}
catch(exception e)
{
}
email = jtfemail.gettext();
if(name.equals())
{
joptionpane.showmessagedialog(null, 이름이 입력되지 않았습니다!);
}
else if(address.equals())
{
joptionpane.showmessagedialog(null, 주소가 입력되지 않았습니다!);
}
else
{
// 정보를 database 클래스에 전달
information person = new information(name, address, phone, email);
joptionpane.showmessagedialog(null, 추가되었습니다!);
}
}
public void displaynextrecord(){
if(recordnumberpersonslist.size()){
joptionpane.showmessagedialog(edialog(null, 마지막페이지입니다!);
jbnback.setenabled(true);
information person = (information) personslist.get(recordnumber);
// displaying search record in text fields
jtfname.settext(person.getname());
jtfaddress.settext(person.getaddress());
jtfphone.settext(+person.getphone());
jtfemail.settext(person.getemail());
}
}
public void displaypreviousrecord(){
recordnumber--;
if(recordnumber 0 ){
joptionpane.showmessagedialog(null, 첫 페이지입니다!);
jbnforward.setenabled(true);
jbnback.setenabled(false);
recordnumber++;
}
else
{
jbnforward.setenabled(true);
information person = (information) personslist.get(recordnumber);
jtfname.settext(person.getname());
jtfaddress.settext(person.getaddress());
jtfphone.settext(+person.getphone());
jtfemail.settext(person.getemail());
}
}
public void clear(){
jtfname.settext();
jtfaddress.settext();
jtfphone.settext();
jtfemail.settext();
/*arraylist 공백으로 초기화*/
recordnumber = -1;
personslist.clear();
jbnforward.setenabled(true);
jbnback.setenabled(true);
}
public static void main(string args[]){
new address();
}
}
-
초롱꽃
카드레이어 메니져로 작업하면되거같은데요