package _1124_A;
import javax.swing.*;
import javax.swing.border.EmptyBorder;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
public class main extends JFrame {
private JLabel mImageLabel;
private ImageIcon[] mImages;
private int mImageIndex;
public static void main(String[] args) {
main frame = new main();
frame.setVisible(true);
}
public main() {
this.setSize(500, 300);
this.setTitle("GUI Test");
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
this.setLayout(new BorderLayout());
JPanel bottom = new JPanel();
mImageLabel = new JLabel();
mImageLabel.setHorizontalAlignment(JLabel.CENTER);
mImages = new ImageIcon[4];
for (int i = 0; i < 4; ++i) {
mImages[i] = new ImageIcon("./Assets/image" + (i+1) + ".png");
}
mImageIndex = 0;
mImageLabel.setIcon(mImages[mImageIndex]);
JButton btnL = new JButton(new ImageIcon("./Assets/button_Left.png"));
JButton btnR = new JButton(new ImageIcon("./Assets/button_Right.png"));
bottom.add(btnL);
bottom.add(btnR);
btnL.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
RefreshImageIndex(false);
mImageLabel.setIcon(mImages[mImageIndex]);
}
});
btnR.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
RefreshImageIndex(true);
mImageLabel.setIcon(mImages[mImageIndex]);
}
});
this.add(mImageLabel, BorderLayout.CENTER);
this.add(bottom, BorderLayout.SOUTH);
this.setVisible(true);
}
private void RefreshImageIndex(boolean isForward)
{
mImageIndex += isForward ? +1 : -1;
if(mImageIndex == 4) mImageIndex = 0;
if(mImageIndex == -1) mImageIndex = 3;
}
}
package _1124_B;
import javax.swing.*;
import javax.swing.border.EmptyBorder;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.ItemEvent;
import java.awt.event.ItemListener;
public class main extends JFrame {
JTextField tf = new JTextField(20);
JTextField nameTf = new JTextField(20);
JTextArea ta;
JRadioButton[] radio = new JRadioButton[3];
int id = 20190001;
String[] text = { "==선택==", "교수", "직원", "학생" };
String type;
String name;
JPanel lowerP;
private JTextArea mTextArea;
JComboBox nameCombo;
main() {
setTitle("사용자 등록 예제");
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setSize(500, 300);
setVisible(true);
JPanel contentP = new JPanel();
contentP.setLayout(new GridLayout(2, 1));
JPanel upperP = new JPanel();
upperP.setLayout(new GridLayout(1, 2));
JPanel leftP = new JPanel();
leftP.setLayout(new GridLayout(3, 1));
leftP.add(new JLabel("학번"));
leftP.add(new JLabel("타입"));
leftP.add(new JLabel("이름"));
upperP.add(leftP);
JPanel rightP = new JPanel();
rightP.setLayout(new GridLayout(3, 1));
tf.setEditable(false);
tf.setText(Integer.toString(id));
rightP.add(tf);
nameCombo = new JComboBox();
for (int i = 0; i < text.length; i++)
nameCombo.addItem(text[i]);
rightP.add(nameCombo);
rightP.add(nameTf);
upperP.add(rightP);
contentP.add(upperP);
lowerP = new JPanel();
lowerP.setLayout(new GridLayout(2, 1));
//버튼
JButton addB = new JButton(new ImageIcon("./Assets/button.png"));
addB.addActionListener(new MyActionListener());
lowerP.add(addB);
mTextArea = new JTextArea();
lowerP.add(new JScrollPane( mTextArea));
contentP.add(lowerP, BorderLayout.SOUTH);
lowerP.setBounds(0, 0, 500, 100);
lowerP.setSize(500, 200);
add(contentP);
setSize(500, 300);
setVisible(true);
}
public static void main(String[] args) {
new main();
}
private class MyActionListener implements ActionListener {
public void actionPerformed(ActionEvent e) {
if(nameCombo.getSelectedIndex() == 0)
{
JOptionPane.showMessageDialog(null, "콤보박스를 선택하세요", "ERROR", JOptionPane.ERROR_MESSAGE);
return;
}
else if(nameTf.getText().length() == 0)
{
JOptionPane.showMessageDialog(null, "이름을 입력하세요", "ERROR", JOptionPane.ERROR_MESSAGE);
return;
}
PrintScreen();
ResetInputField();
}
}
private void ResetInputField()
{
nameTf.setText("");
nameCombo.setSelectedIndex(0);
}
private void PrintScreen()
{
mTextArea.setText(mTextArea.getText() + "\n" + "id: " + tf.getText() + ", type: " + nameCombo.getItemAt(nameCombo.getSelectedIndex()) + ", name: " + nameTf.getText());
// ta = new JTextArea("id: " + id + ", type: " + type + ", name" + name, 5, 30);
String beforeText = tf.getText();
int refreshNum = Integer.parseInt(beforeText);
++refreshNum;
tf.setText(Integer.toString(refreshNum));
}
}
'기타 > univ. projects' 카테고리의 다른 글
[자바] 멀티미디어자바프로젝트II 최종 프로젝트 (0) | 2022.12.21 |
---|---|
[자바] 멀티미디어자바프로젝트II ch.09 연습문제 (0) | 2022.11.24 |
[유니티] 게임엔진응용실습 Unit6 프로젝트 - Zombie Run (FPS 게임) (0) | 2022.11.19 |
[유니티] 게임엔진응용실습 Unit5 프로젝트 - Tower Defense (Windows & Android) (0) | 2022.11.05 |
[자바] 멀티미디어자바프로젝트II ch.08 연습문제 (0) | 2022.11.01 |