1. ๊ฒฝ๊ธฐ์ฅ์ ์ธํฌ๋ก ์์ ํ๊ธฐ
์ด๋์ฅ์ ์ ๋ก ๋๋ ์ ์๋ค๋ ๊ฒ์ด ์ข์ต๋๋ค. ๊ทธ๋ฌ๋ ์ฐ๋ฆฌ๋ ์ธํฌ ์์ฒด๋ก ๋ฌด์์ ํ ์ ์์ต๋๊น?
๊ฒฝ๊ธฐ์ฅ์ ๊ฐ ์ ์ ๋ํด ๋ค์์ ์ค์ ํ ์ ์์ต๋๋ค.
- ์ ์์(์ ์ ๋ฐฐ๊ฒฝ์);
- ํ ์คํธ(ํ ์คํธ ๋๋ ์ซ์์ผ ์ ์์)
- ํ ์คํธ ์์;
- ์ ํฌ๊ธฐ์ ๋ฐฑ๋ถ์จ๋ก ํ์๋๋ ํ ์คํธ ํฌ๊ธฐ.
๊ฒฝ๊ธฐ์ฅ์ ์ธํฌ๋ก ์์ ํ๋ ๋ฐฉ๋ฒ์ ๊ณ ๋ คํด ๋ด ์๋ค.
void setCellColor(int x, int y, Color color)
(x, y)
์ขํ ๊ฐ ์ ๊ฐ์ ์
์ ์์์ ์ค์ ํฉ๋๋ค color
.
์:
setCellColor(0, 0, Color.RED);
setCellColor(3, 6, Color.BLACK);
setCellColor(6, 8, Color.NONE);
Color getCellColor(int x, int y)
์ขํ๊ฐ ์๋ ์
์ ์์์ ๋ฐํํฉ๋๋ค (x, y)
.
์:
Color myColor = getCellColor(2, 0);
void setCellValue(int x, int y, String value)
String value
์ขํ๊ฐ ์๋ ์
์ ํ
์คํธ๋ฅผ ํ ๋นํฉ๋๋ค (x, y)
.
์:
setCellValue(3, 3, "text");
setCellValue(0, 8, "W");
setCellValue(4, 1, "2222");
setCellValue(6, 6, "");
String getCellValue(int x, int y)
์ขํ๊ฐ ์๋ ์
์ ํฌํจ๋ ํ
์คํธ๋ฅผ ๋ฐํํฉ๋๋ค (x, y)
.
์:
String s = getCellValue(3, 3);
System.out.println(getCellValue(4, 1));
void setCellTextSize(int x, int y, int size)
์ขํ๋ฅผ ์ฌ์ฉํ์ฌ ์
์ ํ
์คํธ ํฌ๊ธฐ๋ฅผ ์ค์ ํฉ๋๋ค (x, y)
. ์ฌ๊ธฐ์ size
๋ ํ
์คํธ ๋์ด๋ฅผ ์
๋์ด์ ๋ฐฑ๋ถ์จ๋ก ๋ํ๋ธ ๊ฒ์
๋๋ค.
์:
setCellTextSize(2, 0, 70); // 70% of the cell height
int getCellTextSize(int x, int y)
์ขํ๊ฐ ์๋ ์
์ ์ฝํ
์ธ ํฌ๊ธฐ๋ฅผ ๋ฐํํฉ๋๋ค (x, y)
.
์:
int size = getCellTextSize(2 , 0);
void setCellNumber(int x, int y, int value)
int value
์ขํ๊ฐ ์๋ ์
์ ๋ฒํธ๋ฅผ ํ ๋นํฉ๋๋ค (x, y)
.
์:
setCellNumber(3, 3, 40);
setCellNumber(0, 8, -8);
setCellNumber(4, 1, 2222);
setCellNumber(6, 6, 0);
int getCellNumber(int x, int y)
์ขํ๊ฐ ์๋ ์
์ ํฌํจ๋ ์ซ์๋ฅผ ๋ฐํํฉ๋๋ค (x, y)
. ์
์ ์ซ์๊ฐ ์์ผ๋ฉด 0์ ๋ฐํํฉ๋๋ค.
์:
int i = getCellNumber(3, 3);
System.out.println(getCellNumber(4, 1));
void setCellTextColor(int x, int y, Color color)
์ขํ๋ฅผ ์ฌ์ฉํ์ฌ ์
์ ๋ด์ฉ(ํ
์คํธ) ์์์ ์ค์ ํฉ๋๋ค (x, y)
.
์:
setCellTextColor(2, 1, Color.GREEN);
setCellTextColor(0, 1, Color.NONE);
Color getCellTextColor(int x, int y)
์ขํ๊ฐ ์๋ ์
์ ๋ด์ฉ(ํ
์คํธ) ์์์ ๋ฐํํฉ๋๋ค (x, y)
.
์:
Color textColor = getCellTextColor(1, 3);
setCellValueEx()
๊ทํ์ ํธ์๋ฅผ ์ํด ๋งค๊ฐ๋ณ์ ์ธํธ๊ฐ ๋ค๋ฅธ ์ฌ๋ฌ ๊ฐ์ง ๋ฐฉ๋ฒ์ด ์์ต๋๋ค .
void setCellValueEx(int x, int y, Color cellColor, String value)
(x, y)
์ขํ๊ฐ ๊ฐ๊ฐ cellColor
๋ฐ ์ธ ์
์ ๋ฐฐ๊ฒฝ์๊ณผ ํ
์คํธ๋ฅผ ์ค์ ํฉ๋๋ค value
.
์:
setCellValueEx(0, 2, Color.BLUE, "56");
void setCellValueEx(int x, int y, Color cellColor, String value, Color textColor)
์
์ ๋ฐฐ๊ฒฝ์, ํ
์คํธ ๋ฐ ํ
์คํธ ์์ (x, y)
๊ฐ๊ฐ cellColor
, value
, ์ textColor
๊ฐ์ ์ขํ๋ก ์ค์ ํฉ๋๋ค.
์:
setCellValueEx(0, 2, Color.BLACK, "56", Color.GREEN);
void setCellValueEx(int x, int y, Color cellColor, String value, Color textColor, int textSize);
์
์ ๋ฐฐ๊ฒฝ์, ํ
์คํธ, ํ
์คํธ ์์ ๋ฐ ํ
์คํธ ํฌ๊ธฐ๋ฅผ (x, y)
๊ฐ๊ฐ cellColor
, value
, textColor
๋ฐ ์ textSize
๊ฐ์ ์ขํ๋ก ์ค์ ํฉ๋๋ค.
์:
setCellValueEx(0, 2, Color.BLACK, "56", Color.GREEN, 70);
2. ์์ ์์
CodeGym ๊ฒ์ ์์ง์๋ Color
148๊ฐ์ง ์์์ ๋ํ ๊ณ ์ ํ ๊ฐ์ ํฌํจํ๋ ํน์ ์ ํ์ด ์์ต๋๋ค. NONE
๋ํ ์์์ด ์์์ ๋ํ๋ด๋ ํน๋ณํ ๊ฐ์ด ์์ต๋๋ค .
์์ ์์ ์ ์
Color myColor = Color.WHITE; // The color white is assigned to the myColor variable.
Color redColor = Color.RED; // The color red is assigned to the redColor variable.
Color blueColor = Color.BLUE; // The color blue is assigned to the blueColor variable.
๋ค์ ๋ช ๋ น์ ์ฌ์ฉํ์ฌ ์ ์ ๋นจ๊ฐ์์ผ๋ก ์ฑ์ํ ์ ์์ต๋๋ค.
setCellColor(0, 2, Color.RED);
๋ค์๊ณผ ๊ฐ์ ๋ช ๋ น์ผ๋ก ์ ์ด ํน์ ์์์ธ์ง ํ์ธํ ์ ์์ต๋๋ค.
if (getCellColor(0,2) == Color.GREEN)
{
}
๋๋ก๋ ๊ฐ๋ฅํ ๋ชจ๋ ์์์ ๋ฐฐ์ด์ ๊ฐ์ ธ์์ผ ํ ์๋ ์์ต๋๋ค. ์ด๋ ๊ฒํ๋ ค๋ฉด values()
๋ฐฉ๋ฒ์ ์ฌ์ฉํ์ญ์์ค.
์:
// An array containing every available color is assigned to the colors variable.
Color[] colors = Color.values();
์์ ํ๋ ํธ์์ ์์ ์ธ๋ฑ์ค๋ฅผ ์ป๋ ๊ฒ์ ๋งค์ฐ ์ฝ์ต๋๋ค. ๋ค์ ordinal()
๋ฐฉ๋ฒ์ ์ฌ์ฉํ์ญ์์ค.
Color color = Color.RED;
int redIndex = color.ordinal(); // Index of the color red
int blueIndex = Color.BLUE.ordinal(); // Index of the color blue
์์ธ์ผ๋ก ์์์ ์ฝ๊ฒ ์ป์ ์๋ ์์ต๋๋ค.
// The color whose index is 10 in the Color enum is assigned to the color variable.
Color color = Color.values()[10];
3. ๋ํ ์์
๊ฒ์์ด ๋๋๋ฉด ํ๋ ์ด์ด์๊ฒ ์นํจ๋ฅผ ์๋ ค์ผ ํฉ๋๋ค. ์ด๋ฌํ ๊ฒฝ์ฐ์ ๋ค๋ฅธ ๊ฒฝ์ฐ๋ฅผ ์ํด CodeGym ๊ฒ์ ์์ง์๋ ๋ฉ์์ง void showMessageDialog(Color cellColor, String message, Color textColor, int textSize)
๊ฐ ํฌํจ๋ ๋ํ ์์๋ฅผ ํ์ํ๋ ํน๋ณํ ๋ฉ์๋๊ฐ ์์ต๋๋ค message
.
์ด ๋ฉ์๋์ ๋งค๊ฐ๋ณ์๋ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
cellColor
๋ํ ์์์ ๋ฐฐ๊ฒฝ์์ ๋๋ค.message
๋ฉ์์ง์ ํ ์คํธ์ ๋๋คtextColor
๋ฉ์์ง ํ ์คํธ์ ์์์ ๋๋ค.textSize
๋ฉ์์ง ํ ์คํธ์ ํฌ๊ธฐ์ ๋๋ค.
์ฌ์ฉ์๊ฐ ์คํ์ด์ค ๋ฐ๋ฅผ ๋๋ฅด๊ฑฐ๋ ๋ง์ฐ์ค๋ก ๋ํ ์์๋ฅผ ํด๋ฆญํ๋ฉด ๋ํ ์์๊ฐ ์๋์ผ๋ก ๋ซํ๋๋ค.
์ด ๋ฉ์๋๋ฅผ ํธ์ถํ๋ ์:
// Display a dialog box with a message
showMessageDialog(Color.BLACK, "EPIC FAIL", Color.RED, 80);
4. ํ์ฉ ๋ฐฉ๋ฒ
๊ฒ์์ ์์ฑํ ๋ ๋์๋ฅผ ์์ฃผ ์ฌ์ฉํ๊ฒ ๋ฉ๋๋ค. ๋์๋ฅผ ๋ ์ฝ๊ฒ ์ป๊ธฐ ์ํด ๊ฒ์ ์์ง์ ์ ํธ๋ฆฌํฐ ๋ฉ์๋๋ฅผ ์ฌ์ฉํ ์ ์์ต๋๋ค.
int getRandomNumber(int max)
0
๋ฒ์ ์์ ๋์๋ฅผ ๋ฐํํฉ๋๋ค (maxโ1)
.
int getRandomNumber(int min, int max)
min
๋ฒ์ ์์ ๋์๋ฅผ ๋ฐํํฉ๋๋ค (maxโ1)
.
5. JDK 11+
IntelliJ IDEA์์ ํ๋ก๊ทธ๋จ์ ์คํํ ๋ Game ํด๋์ค๋ฅผ ์์ํ๋ ํด๋์ค์์ ๋ค์ ์ค๋ฅ๊ฐ ๋ฐ์ํ ์ ์์ต๋๋ค.
Error: JavaFX runtime components are missing, and are required to run this application
์ด ๊ฒฝ์ฐ ์ด๋ฌํ ๊ฐ ํด๋์ค์ ๋ํด ๋ค์ ๋จ๊ณ๋ฅผ ํ ๋ฒ ์ํํด์ผ ํฉ๋๋ค.
- ์คํ ์ด๊ธฐ โ ๊ตฌ์ฑ ํธ์ง
- VM ์ต์
๊ฐ์ผ๋ก ๋ค์์ ์
๋ ฅํฉ๋๋ค.
--module-path ./lib/javafx-sdk-16/lib --add-modules=javafx.controls,javafx.fxml,javafx.base
์ฃผ๋ชฉ:
์ต์ ๋ฒ์ ์ IntelliJ IDEA์์๋ "VM ์ต์ " ํ๋๊ฐ ๊ธฐ๋ณธ์ ์ผ๋ก ํ์๋์ง ์์ต๋๋ค. ํ์ํ๋ ค๋ฉด ALT+V๋ฅผ ๋๋ฅด์ญ์์ค.
- ๋๋ฅด๊ธฐ: ์ ์ฉ โ ํ์ธ
- ๊ฒ์์ ์คํํฉ๋๋ค.
GO TO FULL VERSION