2020. 9. 10. 19:55ใ์ ๊ณต ๊ณผ๋ชฉ/์๋์ฐ ํ๋ก๊ทธ๋๋ฐ
์๋์ฐ ํ๋ก๊ทธ๋๋ฐ - ํผ์ ๋ํ์ฌ
ํผ์ ๋ํ ์งง์ ์ค๋ช ์ ์์์ ์ค๋ช ํ๋ค.
์ค๋์ ์ด๋ฌํ ํผ์ ํต์ฌ ํด๋์ค์ ์ด๋ฅผ ์ด์ฉํ์ฌ ๋ช๊ฐ์ง ์ด๋ฒคํธ๋ฅผ ๋ง๋ค์ด ๋ณผ ๊ฒ์ด๋ค.
์ํผ ์ํ๋ฆฌ์ผ์ด์ ์ ํต์ฌ ํด๋์ค
1) ํผ ํด๋์ค
- ์๋์ฐ ํผ์ ๋ํ๋ด๋ ํด๋์ค
2)์ปดํฌ๋ํธ ํด๋์ค
- ์ง์ ์ ์ผ๋ก ํ๋ฉด์ ๋ํ๋์ง๋ ์์ง๋ง ๊ฐ๋ ์ ์ธ ๋ถ๋ถ์ ๋ํ๋ด๋ ํด๋ซ
3) ์ปจํธ๋กค ํด๋์ค
- ํผ์ ์ง์ ํ์๋๋ ์ปจํธ๋กค์ ์ํ ํด๋์ค
ํผ ์ํ๋ฆฌ์ผ์ด์ ์๋ ๋์์ธ ์์ค ์ฝ๋์, ์ด๋ฒคํธ์ ๋ํ ์์ค ์ฝ๋๊ฐ ์กด์ฌํ๋ค.
๋์์ธ ์์ค ์ฝ๋๋ ์ฐ๋ฆฌ๊ฐ ๋ฒํผ์ ์ด๋ฆ์ ๋ฌด์์ผ๋ก ํ ์ง, ํฌ๊ธฐ๋ฅผ ์ฃผ๋์ง, ์ด๋ค ์ด๋ฒคํธ๋ฅผ ์ค์ ํ ๊ฒ์ธ์ง๋ฅผ ์์ฑํ๋ ๊ณณ์ด๊ณ ์์ค ์ฝ๋๋ ์ด๋ฒคํธ์ ๋ํ ๋์์ ์ง์ ์์ฑํจ์ผ๋ก์จ ๋์ํ๊ฒ ๋ง๋๋ ์์ค ์ฝ๋์ด๋ค.
ํ๋กํผํฐ ๋ชฉ๋ก
์ปจํธ๋กค : (Name) | ํ๋กํผํฐ | ๊ฐ |
Form : Form1 | Text | DisplayStartDateApp |
Button : button1 | Text | Display |
์ด๋ฒคํธ ์ฒ๋ฆฌ๊ธฐ
์ปจํธ๋กค : (Name) | ์ด๋ฒคํธ | ๋ฉ์๋๋ช |
Button : button1 | Click | Button1_Click() |
๋จผ์ ํ๋กํผํฐ ๋ชฉ๋ก์ ๋ณด์. ์ฒซ๋ฒ์งธ ์ค์ Form์ด๋ผ๋ ์ปจํธ๋กค์ Form1์ด๋ผ๋ ์ด๋ฆ์ด ์์ฑ์ด ๋์ด์๋ค. ๊ทธ๋ฆฌ๊ณ ํ๋กํผํฐ๋ฅผ Text๋ก ์ค๋ค๋ฉด ์ด Form1์ ์ด๋ฆ์ด ๊ฐ์ ์์นํ DisplayStartDateApp๋ก ๋ฐ๋๊ฒ ๋๋ค. ๋ฐ์ ๋ฒํผ1๋ํ ๋ง์ฐฌ๊ฐ์ง์ด๋ค.
๊ทธ๋ฆฌ๊ณ ์ด๋ฒคํธ์ฒ๋ฆฌ๊ธฐ๋ฅผ ๋ณด๋ฉด button1์ ์ด๋ฒคํธ Click์ด ๊ฑธ๋ ค์์ ๋ ํด๋ฆญํ ์ ์๊ฒ ํผ์์ ์ง์ํ ๊ฒ์ด๋ค. ํด๋ฆญํ์ ๋ ๋ฌด์์ด ์ผ์ด๋ ์ง๋ ์ฐ๋ฆฌ๊ฐ ์ง์ ์์ฑํ๋ฉด ๋๋ค.
์ค์ต์ผ๋ก ๋์ด๊ฐ๋ณด์.
์ฐ๋ฆฌ๋ Load/Closed ์ด๋ฒคํธ์ Closing ์ด๋ฒคํธ๋ฅผ ์์ ๋ณผ ๊ฒ์ด๋ค.
1) Load/Closed ์ด๋ฒคํธ
๋จผ์ ํผ์ ํ๋ก์ ํธ๋ก ๋ง๋ ํ ํผ์ ํด๋ฆญํ ํ ์ด๋ฒคํธ์ ๋ค์ด๊ฐ load๋ฅผ ํด๋ฆญํ๋ค.
๊ทธ๋ฌ๋ฉด MessageBox.Show๋ฅผ ์ ์ธํ ์์ค๋ค์ด ์๋ ๊ณณ์ผ๋ก ์ด๋๋๋๋ฐ ์ด๋ ํ์๋ loadํจ์์ loadํ ๋ ๋ฉ์ธ์ง๋ฐ์ค๊ฐ ๋จ๊ฒ ์ค์ ํด ๋์๋ค.
๋๋ฒ์งธ๋ก Form์ ๋ซ์ ๋ ๋ซ๋ ๋ฉ์ธ์ง ์ฐฝ์ด ๋จ๊ฒํ๋ ์ด๋ฒคํธ๋ฅผ ํ๋ ค๋ฉด ์ด๋ค ์ด๋ฒคํธ๋ฅผ ์ฃผ์ด์ผ ํ ๊น?
FormClosed์ด๋ค. ์ด๋ฅผ ํด๋ฆญํ๋ฉด
์ ๊ฐ์ ๊ฒ์ด ์์ค ์ฝ๋์ ์ ๋ ฅ๋๋๋ฐ ์ด ํจ์์์ MessageBox.Show("This form is closed");๋ฅผ ๋ฃ์ผ๋ฉด ๋ซํ ๋ ๋ฉ์ธ์ง๋ฐ์ค๊ฐ ์๊ธฐ๋ฉด์ ๋ซํ ๊ฒ์ด๋ค.
๋ค์์ FormClosing ์ด๋ฒคํธ์ด๋ค.
FormClosing ์ด๋ฒคํธ๋ ๋ซํ๋ฉด์ ๋์ํ๋ ์ด๋ฒคํธ์ด๋ค.
์ด๋ ํ ๋ฒํผ์ ๋๋ ์ ๋ ์ด ์ฐฝ์ ๋ซ์ผ์๊ฒ ์ต๋๊น? ๋ผ๋ ํ์๊ฐ ๋จ๊ณ ์๋ฅผ ๋๋ฅด๋ฉด ํผ ์ ์ฒด๊ฐ ๋ซํ๊ณ ์๋์ค๋ฅผ ๋๋ฅด๋ฉด ๋ฒํผ์ฐฝ๋ง ๊บผ์ง๋ ๊ฒ์ ์์ฑํด๋ณด์.
๋จผ์ close๋ผ๋ ๋ฒํผ์ ๋ง๋ ๋ค, close()ํจ์๋ฅผ ์ค๋ค. ๊ทธ๋ฆฌ๊ณ Form1์ FormClosing ์ด๋ฒคํธ๋ฅผ ์ค๋ค. ๊ทธ๋ ๊ฒ ๋๋ฉด ๋ฒํผ ํด๋ฆญํ๋ฉด ์๋๋ Form์ด ๋ซํ๊ฒ ๋๋๋ฐ FormClosingํจ์๊ฐ ์คํ๋๊ฒ ๋๋ฏ๋ก ์์ง ๋ซํ์ง ์์์ฑ๋ก FormClosingํจ์๊ฐ ์ด๋ฆฌ๊ฒ ๋๋ค. ํ์๊ฐ ์์ฑํ FormClosing ํจ์๋ ์ด๋ ๋ค.
FormClosing ํจ์์ MessageBox๋ก ์ฐฝ์ ๋ซ์๊ฑด์ง ์๋์ง๋ฅผ ์ค๋ค. ๊ทธ๋ฆฌ๊ณ ๊ทธ ๋ค์๋ Prompt๋ ์ฐฝ์ด๋ฆ, MessageBoxButtons๋ ์ ํ ๋ฒํผ์ ๊ฐฏ์ ๋ฐ ํน์ฑ, MessageBoxIcon์ ์ง๋ฌธ์ ํ์์ผ๋ก์ด๋ค. ๊ทธ๋ฆฌ๊ณ ๊ทธ๊ฒ DialogResult.Yes ์ฐ๋ฆฌ๊ฐ ์ ํํ๊ฒ Yes๋ผ๋ฉด e.Cancel = false. // form์ ์ทจ์ํ์ง ์๋๋ค --> ์ด๋ ์ด ์๋ฏธ๋ ํผ์ ๋ซ์ง ์๋๋ค๊ฐ ์๋, ์ทจ์ํ์ง ์๋๋ค์ด๋ค. ์ฐ๋ฆฌ๋ Close๋ฅผ ํตํด ํผ์ ๋ซ์ผ๋ ค๊ณ ํ์ผ๋ฏ๋ก ์ด ํ์๋ฅผ ์ทจ์ํ์ง ์์ผ๋ฉด ํผ์ด ๋ซํ๋ค๊ฐ ๋๋ค. else ๋ํ ๋ง์ฐฌ๊ฐ์ง๋ก ์์ฑํด์ฃผ๋ฉด ๋๋ค.
'์ ๊ณต ๊ณผ๋ชฉ > ์๋์ฐ ํ๋ก๊ทธ๋๋ฐ' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
์๋์ฐ ํ๋ก๊ทธ๋๋ฐ - ํผ(ํ๋กํผํฐ) (0) | 2020.09.17 |
---|---|
์๋์ฐ ํ๋ก๊ทธ๋๋ฐ -Delegate (0) | 2020.09.17 |
์๋์ฐ ํ๋ก๊ทธ๋๋ฐ - C# ๊ธฐ๋ณธ๊ฐ๋ (2) (0) | 2020.09.10 |
์๋์ฐ ํ๋ก๊ทธ๋๋ฐ - C#ํ๋ก๊ทธ๋๋ฐ ์ ๋ฌธ (0) | 2020.09.10 |
์๋์ฐ ํ๋ก๊ทธ๋๋ฐ - ์ฝ์๊ณผ ์ํผ(C#) (3) | 2020.09.04 |