๋ฐ์ดํฐ๋ฅผ ํ ํ์์ผ๋ก ํ์ํ๋ ค๋ ๊ฒฝ์ฐ javax.swing ํจํค์ง ์ JTable ํด๋์ค ์ฌ์ฉ์ ๊ณ ๋ คํด์ผ ํฉ๋๋ค . JTable ํด๋์ค๋ ํ๊ณผ ์ด์ด ์๋ ํ
์ด๋ธ์ ๋ง๋ค๊ณ ํ์์ ๋ฐ๋ผ ์ฌ์ฉ์ ์ ์ํ ์ ์๋ ๋ค๋ชฉ์ ๋๊ตฌ์
๋๋ค . ์ด ๊ธฐ์ฌ์์๋ JTable ํด๋์ค๋ฅผ ์ฌ์ฉํ์ฌ ํ
์ด๋ธ์ ๋ง๋ค๊ณ ๋ฐ์ดํฐ๋ก ์ฑ์ฐ๋ ๋ฐฉ๋ฒ์ ๋ณด์ฌ์ค๋๋ค .
Java์ JTable ํด๋์ค๋ ๋ฌด์์ ๋๊น?
jtable์ ๊ด๋ฒ์ํ ์ฌ์ฉ์ ์ ์ ์ต์ ์ ์ ๊ณตํ๋ ๋งค์ฐ ๋ค์ฌ๋ค๋ฅํ ํด๋์ค์ ๋๋ค. jtable ํด๋์ค๋ฅผ ์ฌ์ฉํ๋ฉด ํ ๋์ด, ์ด ๋๋น, ๊ธ๊ผด, ์์ ๋ฑ์ด ๋ค๋ฅธ ํ ์ด๋ธ์ ๋ง๋ค ์ ์์ต๋๋ค. ๋ํ ํ ์ด๋ธ ์ ์ ์ด๋ฏธ์ง, ์์ด์ฝ ๋ฐ ๋ฒํผ์ ์ถ๊ฐํ ์ ์์ผ๋ฉฐ ์ฌ์ฉ์ ์ ์ ์ ๋ ๋๋ฌ ๋ฐ ํธ์ง๊ธฐ๋ฅผ ๊ตฌํํ์ฌ ๊ณ ๋๋ก ์ฌ์ฉ์ ์ ์๋ ํ ์ด๋ธ์ ๋ง๋ค ์๋ ์์ต๋๋ค. ๋ํ vjtable ํด๋์ค๋ ๋ฐ์ดํฐ๋ฅผ ์ ๋ ฌ ๋ฐ ํํฐ๋งํ๊ณ ์ ํ, ํธ์ง, ํฌ๊ธฐ ์กฐ์ ๊ณผ ๊ฐ์ ์ฌ์ฉ์ ์ํธ ์์ฉ์ ์ฒ๋ฆฌํ๊ธฐ ์ํ ์ฌ๋ฌ ๋ฉ์๋๋ฅผ ์ ๊ณตํฉ๋๋ค. ์ด๋ฌํ ๋ฐฉ๋ฒ์ ์ฌ์ฉํ๋ฉด ์ ํ๋ฆฌ์ผ์ด์ ์ ํน์ ์๊ตฌ ์ฌํญ์ ์ถฉ์กฑํ๋ ๋ํํ ๋ฐ ๋ฐ์ํ ํ ์ด๋ธ์ ์ฝ๊ฒ ๋ง๋ค ์ ์์ต๋๋ค.์๋ฐ JTable ์
๊ฐ๋จํ JTable ์์ ๋ฅผ ๋ง๋๋ ๊ฒ๋ถํฐ ์์ํด ๋ณด๊ฒ ์ต๋๋ค . ์ฝ๋๋ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.import javax.swing.JFrame;
import javax.swing.JScrollPane;
import javax.swing.JTable;
// example to use JTable()
public class JTableExample extends JFrame {
public JTableExample() {
setTitle("JTable Example");
JTable jt = new JTable(4, 2);
JScrollPane sp = new JScrollPane(jt);
add(sp);
setSize(300, 200);
setVisible(true);
setDefaultCloseOperation(EXIT_ON_CLOSE);
}
public static void main(String[] args) {
new JTableExample(); // calling JTable()
}
}
์ด ์์์๋ JFrame ๊ฐ์ฒด๋ฅผ ์์ฑ ํ๊ณ ํด๋น ๊ฐ์ฒด์ ์ ๋ชฉ์ "JTableExample"๋ก ์ค์ ํฉ๋๋ค. ๊ทธ๋ฐ ๋ค์ 4๊ฐ์ ํ๊ณผ 2๊ฐ์ ์ด์ด ์๋ JTable ๊ฐ์ฒด๋ฅผ ๋ง๋ค๊ณ ์ด๋ฅผ JScrollPane ๊ฐ์ฒด ์ ๋ํํฉ๋๋ค . ๋ง์ง๋ง์ผ๋ก JScrollPane ๊ฐ์ฒด๋ฅผ JFrame ๊ฐ์ฒด ์ ์ถ๊ฐํ๊ณ JFrame ์ ํฌ๊ธฐ๋ฅผ ์ค์ ํ ๋ค์ ํ์๋๋๋ก ๋ง๋ญ๋๋ค. ์ด ์ฝ๋๋ฅผ ์คํํ๋ฉด 4๊ฐ์ ํ๊ณผ 2๊ฐ์ ์ด์ด ์๋ ํ
์ด๋ธ์ด ์๋ ์ฐฝ์ด ํ์๋ฉ๋๋ค.
ํ ์ด๋ธ ์์ฑ
์ด์ JTable ํด๋์ค์ ํ ์ด๋ธ ์์ฑ ๋ฐฉ๋ฒ์ ์์ธํ ์ดํด๋ณด๊ฒ ์ต๋๋ค . JTable ํด๋์ค์๋ ์ฌ๋ฌ ์์ฑ์๊ฐ ์์ง๋ง ๊ฐ์ฅ ์ผ๋ฐ์ ์ผ๋ก ์ฌ์ฉ๋๋ ์์ฑ์๋ ํ ์ด๋ธ์ ํ ์์ ์ด ์๋ผ๋ ๋ ๊ฐ์ง ์ธ์๋ฅผ ์ฌ์ฉํฉ๋๋ค .JTable jt = new JTable(4, 2);
์ด ์ฝ๋ ์ค์ 4๊ฐ์ ํ๊ณผ 2๊ฐ์ ์ด์ด ์๋ JTable ๊ฐ์ฒด๋ฅผ ์์ฑํฉ๋๋ค. ๊ธฐ์กด ๋ฐ์ดํฐ ๋ชจ๋ธ์ ์ฌ์ฉํ์ฌ JTable ๊ฐ์ฒด๋ฅผ ์์ฑํ ์๋ ์์ผ๋ฉฐ , ์ด๋ฅผ ํตํด ํ
์ด๋ธ์ ๋ฐ์ดํฐ์ ๋์์ ์ฌ์ฉ์ ์ ์ํ ์ ์์ต๋๋ค.
ํ ์ด๋ธ ์ฑ์ฐ๊ธฐ
ํ ์ด๋ธ์ ๋ฐ์ดํฐ๋ก ์ฑ์ฐ๋ ค๋ฉด ์ค์ ํ ๊ฐ, ํ ์ธ๋ฑ์ค ๋ฐ ์ด ์ธ๋ฑ์ค๋ผ๋ ์ธ ๊ฐ์ง ์ธ์๋ฅผ ์ฌ์ฉํ๋ setValueAt() ๋ฉ์๋๋ฅผ ์ฌ์ฉํ ์ ์์ต๋๋ค. ์๋ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.jt.setValueAt("John Doe", 0, 0);
jt.setValueAt(25, 0, 1);
jt.setValueAt("Jane Smith", 1, 0);
jt.setValueAt(30, 1, 1);
jt.setValueAt("Bob Johnson", 2, 0);
jt.setValueAt(40, 2, 1);
jt.setValueAt("Alice Williams", 3, 0);
jt.setValueAt(35, 3, 1);
์ด ์ฝ๋๋ ์ฒ์ 4๊ฐ ํ ์ค ์ฒซ ๋ฒ์งธ ์ด์ ๊ฐ์ ์ค์ ํฉ๋๋ค. ์ฒซ ๋ฒ์งธ ์ด์๋ ์ฌ๋๋ค์ ์ด๋ฆ์ด ํฌํจ๋๊ณ ๋ ๋ฒ์งธ ์ด์๋ ๋์ด๊ฐ ํฌํจ๋ฉ๋๋ค.
GO TO FULL VERSION