2024년 4월 19일 금요일

자바 스윙 초보자의 기본 디자인 만들기

한 화면에 여러 탭 메뉴가 존재하는 화면이며 각 각의 탭메뉴를 눌러서 여러 기능을 사용하려고 만든 디자인

Main.java

⁠public class Main {
public static void main(String[] args) {
new MainTabView();
}
}

MainTabView.java

⁠public class MainTabView extends JFrame{
public MainTabView(){
JTabbedPane tabPnl = new JTabbedPane();
createTabbedPane(tabPnl);

//메뉴바 생성
//JMenuBar mb = new JMenuBar();
//메뉴바 > 메뉴생성
//JMenu screenMenu = new JMenu("메뉴1");
//메뉴바 > 메뉴생성 > 메뉴아이템 생성
//JMenuItem searchPOO = new JMenuItem("메뉴아이템1");
//JMenuItem chkDataInputDate = new JMenuItem("메뉴아이템2");
//메뉴에 아이템 추가
//screenMenu.add(searchPOO);
//screenMenu.add(chkDataInputData);
//메뉴바에 메뉴 추가
//mb.add(screenMenu);

//화면구성
add(tabPnl, BorderLayout.CENTER);
//add(mb, "North");
showGUI();
}
//탭메뉴 생성
public void createTabbedPane(JTabbedPane tabPnl){
tabPnl.addTab("로그조회", new ListMainPannel());
tabPnl.addTab("탭1", null);
tabPnl.addTab("탭2", null);
tabPnl.addTab("탭3", null);
tabPnl.addTab("탭4", null);
}
//화면구성
private void showGUI(){
setTile("PO Tool"); //프레임 타이틀

//setSize(1152,864); //프레임 사이즈
pack(); //프레임안 레이아웃에 맞게 크기조절

setVisible(true); //화면에 보여줌

setDefaultCloseOperation(EXIT_ON_CLOSE); //윈도우창 닫을때 프로세스까지 같이 종료가능
}
}

ListMainPanel.java

public class ListMainPanel extends JPanel{
private SoapClient sc;
private JComboBox<String> poServerCombo;
private JTextField msgIdTf;
private JButton selBtn;
private JTextArea logTa;
public ListMainPannel(){
setLayout(new BoxLayout(this, BoxLayout.Y_AXIS)); //박스를 쌓는 것 처럼 배치하는 레이아웃
Font font12 = new Font("굴림", Font.PLAIN, 12);

//콤보박스
String[] serverArr = {"PO1", "PO2", "PO3", "PO4"};
poServerCombo = new JComboBox<String>(serverArr);
poServerCombo.setFont(font12);
add(poServerCombo);

//텍스트필드
msgIdTf = new JTextField();
add(msgIdTf);

//버튼
selBtn = new JButton("조회");
add(selBtn);

//텍스트 에어리어
logTa = new JTextArea("Audit Log");
add(new JScrollPane(logTa)); //스크롤 사용

selBtn.addActionListener(new ActonListener() {
@Override
public void actionPerformed(ActionEvent e){
//AdapterMessageMonitoring > getMessagesByIDs 웹서비스로 메시지 아이디 전달 후 메시지 키 가져오기

//가져온 메시지 키가지고 getLogEntries 서비스에서 로그데이터 가져오기

logTa.setText("로그데이터");
}
});
}
}

댓글 없음:

댓글 쓰기