°øÅë ´ëÈ»óÀÚ´Â ¿î¿µÃ¼Á¦°¡ ¹Ì¸® Á¦°øÇÏ´Â ´ëÈ»óÀڷμ ÆÄÀÏÀ» ¼±ÅÃÇѴٵ簡 ÆùÆ®¸¦ ¼±ÅÃÇÒ ¶§ »ç¿ëÇÑ´Ù. ÇÏ´Â ÀÏÀº »·ÇÏÁö¸¸ ±¸Á¶°¡ º¹ÀâÇؼ Á÷Á¢ ¸¸µé±â´Â ¾î·Á¿îµ¥ ´ÙÇàÈ÷ ¿î¿µÃ¼Á¦°¡ Á¦°øÇϹǷΠºÒ·¯¼ ¾²±â¸¸ Çϸé
µÈ´Ù. Àç»ç¿ë¼ºÀÌ Å¹¿ùÇÏ¿© »ý»ê¼º Çâ»ó¿¡ Å©°Ô ±â¿©Çϸç ÇÁ·Î±×·¥¿¡ »ó°ü¾øÀÌ ÅëÀÏÀûÀÎ ÀÎÅÍÆäÀ̽º¸¦ Á¦°øÇÑ´Ù. ¸Þ¸ðÀåÀ̳ª ºñÁÖ¾ó ½ºÆ©µð¿À³ª ÆÄÀÏ ¿±â ´ëÈ»óÀÚÀÇ ¸ð¾çÀº °ÅÀÇ µ¿ÀÏÇÏ´Ù.
´å³ÝÀÇ °øÅë ´ëÈ»óÀÚ´Â Win32ÀÇ °øÅë ´ëÈ»óÀÚ¸¦ ·¡ÇÎÇØ ³õÀº °ÍÀ̾î¼
»ç¿ëÇغ» °æÇèÀÌ ÀÖ´Ù¸é ½±°Ô Àͼ÷ÇØÁú ¼ö ÀÖ´Ù. ±×·¯³ª ³Ê¹« ¶È°°ÀÌ º£³¢´Ù º¸´Ï ±â´ÉÀûÀÎ °³¼±Àº °ÅÀÇ
¾ø°í ¿ÀÈ÷·Á ÇѰ踸 ÀÖ´Ù. ã±â, ¹Ù²Ù±â ´ëÈ»óÀÚ´Â Áö¿øÇÏÁö
¾ÊÀ¸¸ç Ä¿½ºÅ͸¶ÀÌ¡Çϱ⵵ ¾î·Æ´Ù. ´å³ÝÀº °øÅë ´ëÈ»óÀÚµµ Ŭ·¡½º·Î Á¦°øÇϴµ¥ °èÃþ ±¸Á¶´Â ´ÙÀ½°ú °°´Ù.
ÆÄÀÏ ¿±â, ÆÄÀÏ ÀúÀå ´ëÈ»óÀÚ´Â
FileDialog Ãß»ó Ŭ·¡½º·ÎºÎÅÍ ÆÄ»ýµÈ OpenFileDialog, SaveFileDialog
Ŭ·¡½º·Î Ç¥ÇöÇÑ´Ù. µÎ ´ëÈ»óÀÚ´Â ¸ð¾çÀ̳ª ±â´É»ó ¸¹Àº Ư¼ºÀ» °øÀ¯ÇÏ¸ç ´ëºÎºÐÀÇ ±â´ÉÀ» FileDialog·ÎºÎÅÍ »ó¼Ó¹Þ´Â´Ù. ´ÙÀ½Àº FileDialog Ŭ·¡½ºÀÇ ÁÖ¿ä ÇÁ·ÎÆÛƼÀÌ´Ù.
ÇÁ·ÎÆÛƼ |
ŸÀÔ |
¼³¸í |
AddExtension |
bool |
È®ÀåÀÚ¸¦ »ý·«ÇÏ°í ÆÄÀÏ¸í¸¸ ÀÔ·ÂÇÒ ¶§ È®ÀåÀÚ¸¦ ÀÚµ¿À¸·Î Ãß°¡ÇÒ °ÍÀΰ¡¸¦ ÁöÁ¤ÇÑ´Ù. Ãß°¡µÉ
È®ÀåÀÚ´Â ÇÊÅÍ¿Í CheckFileExists ÇÁ·ÎÆÛƼ,
DefaultExt ÇÁ·ÎÆÛƼ¿¡ µû¶ó ´Þ¶óÁø´Ù. |
CheckFileExists |
bool ¨â |
ÆÄÀÏÀÌ Á¸ÀçÇÏ´ÂÁö Á¡°ËÇÑ´Ù. ÆÄÀÏÀÌ Á¸ÀçÇÏÁö ¾ÊÀ» ½Ã °æ°í ´ëÈ»óÀÚ°¡ Ç¥½ÃµÈ´Ù. OpenFileDialogÀÇ µðÆúÆ®´Â trueÀÌ°í SaveFileDialogÀÇ µðÆúÆ®´Â falseÀÌ´Ù. |
CheckPathExists |
bool |
°æ·Î°¡ Á¸ÀçÇÏ´ÂÁö Á¡°ËÇÑ´Ù. °æ·Î°¡ Á¸ÀçÇÏÁö ¾ÊÀ¸¸é °æ°í ´ëÈ»óÀÚ°¡ Ç¥½ÃµÈ´Ù. |
DefaultExt |
string |
È®ÀåÀÚ¸¦ »ý·«ÇÒ ¶§ Àû¿ëÇÒ ±âº» È®ÀåÀÚ¸¦ ÁöÁ¤ÇÑ´Ù. È®ÀåÀÚ¿¡´Â . ¹®ÀÚ°¡ Æ÷ÇԵǾî ÀÖÁö ¾Ê´Ù. |
FileName |
string |
´ëÈ»óÀÚ¿¡¼ ¼±ÅÃÇÑ ÆÄÀÏÀÇ À̸§ÀÌ´Ù. °æ·Î¿Í È®ÀåÀÚ¸¦ ¸ðµÎ Æ÷ÇÔÇÏ´Â ¿ÏÀü °æ·ÎÀÌ´Ù. |
FileNames |
string[] |
º¹¼ö °³ÀÇ ÆÄÀÏÀ» ¼±ÅÃÇßÀ» ¶§ ¼±ÅÃµÈ ÆÄÀϸíÀÇ ¹è¿ÀÌ´Ù. ¸ðµç ÆÄÀϸíÀº °æ·Î¿Í
È®ÀåÀÚ¸¦ Æ÷ÇÔÇÏ´Â ¿ÏÀü °æ·ÎÀÌ´Ù. |
Filter |
string |
´ëÈ»óÀÚÀÇ ÆÄÀÏ Çü½Ä¿¡ Ç¥½ÃÇÒ ÇÊÅÍ ¹®ÀÚ¿ÀÌ´Ù. | ¹®ÀÚ¸¦ ±âÁØÀ¸·Î ¼³¸í°ú
ÆÐÅÏÀ¸·Î ±¸¼ºµÇ¸ç ÀÌ·± ÇÊÅÍ°¡ ¿©·¯ °³ ¿¬ÀÌ¾î ³ª¿Â´Ù. ÆÐÅÏ¿¡´Â ¼¼¹ÌÄÝ·ÐÀ¸·Î ±¸ºÐµÈ ¿©·¯ °³ÀÇ ÆÐÅÏÀÌ
µ¿½Ã¿¡ ¿Ã ¼ö ÀÖ´Ù. |
FilterIndex |
int |
ÇöÀç ¼±ÅÃÇÑ ÇÊÅÍÀÇ À妽ºÀÌ´Ù. µðÆúÆ®´Â 1ÀÌ´Ù. |
InitialDirectory |
string |
´ëÈ»óÀÚ°¡ ¿¸± ¶§ óÀ½ Ç¥½ÃÇÒ Ãʱ⠵ð·ºÅ͸®ÀÇ °æ·ÎÀÌ´Ù. ºó ¹®ÀÚ¿ÀÏ °æ¿ì
¸¶Áö¸·À¸·Î ¿¾ú´ø µð·ºÅ͸®°¡ Ç¥½ÃµÈ´Ù. |
Options |
int |
ÆÄÀÏ ´ëÈ»óÀÚÀÇ µ¿ÀÛ¿¡ ¿µÇâÀ» ÁÖ´Â ¿É¼ÇÀ» ÁöÁ¤ÇÑ´Ù. Äڵ忡¼ ÀÌ °ªÀ» Á÷Á¢
»ç¿ëÇÏÁö´Â ¾ÊÀ¸¸ç ´å³Ý ¶óÀ̺귯¸®°¡ ³»ºÎÀûÀ¸·Î »ç¿ëÇÑ´Ù. |
RestoreDirectory |
bool |
´ëÈ»óÀÚ¸¦ ´Ý±â Àü¿¡ ÇöÀç µð·ºÅ͸®¸¦ º¹¿øÇÒ °ÍÀΰ¡¸¦ ÁöÁ¤ÇÑ´Ù. |
ShowHelp |
bool |
µµ¿ò¸» ¹öÆ°À» Ç¥½ÃÇÒ °ÍÀΰ¡¸¦ ÁöÁ¤ÇÑ´Ù. |
Title |
string |
´ëÈ»óÀÚÀÇ Å¸ÀÌƲ ¹Ù¿¡ Ç¥½ÃÇÒ Á¦¸ñÀÌ´Ù. |
ValidateNames |
bool |
Win32 ±ÔÄ¢¿¡ À¯È¿ÇÑ ÆÄÀÏ¸í¸¸ »ç¿ëÇÒ ¼ö ÀÖ´ÂÁö¸¦ ÁöÁ¤ÇÑ´Ù. |
´ëÈ»óÀÚÀÇ Ä¸¼ÇÀ» ÁöÁ¤ÇÏ´Â Title, ÇÊÅ͸¦ ÁöÁ¤ÇÏ´Â Filter, ½ÃÀÛ µð·ºÅ͸®¸¦ ÁöÁ¤ÇÏ´Â InitialDirectory µîÀÇ
ÇÁ·ÎÆÛƼ´Â ÀԷ¿ëÀ̹ǷΠ´ëÈ»óÀÚ¸¦ ¿±â Àü¿¡ ¹Ì¸® ¿øÇÏ´Â °ªÀ¸·Î ¼³Á¤ÇØ¾ß ÇÑ´Ù. ÀÌ¿¡ ºñÇØ FileName°ú FileNames ÇÁ·ÎÆÛƼ´Â »ç¿ëÀÚ°¡ ¼±ÅÃÇÑ ÆÄÀÏ¿¡
´ëÇÑ Á¤º¸¸¦ ¸®ÅÏÇϱâ À§ÇÑ Ãâ·Â¿ëÀ̹ǷΠ´ëÈ»óÀÚ ½ÇÇà ÈÄ¿¡ ÀÌ °ªÀ» ÀÐ¾î ¼±ÅÃµÈ ÆÄÀÏÀÇ °æ·Î¸¦ Á¶»çÇÑ´Ù. ÆÄÀÏ
¿±â ´ëÈ»óÀÚ´Â ´ÙÀ½ ÇÁ·ÎÆÛƼ¸¦ Ãß°¡·Î °¡Áø´Ù. ÇѲ¨¹ø¿¡ º¹¼ö °³ÀÇ ÆÄÀÏÀ» ¼±ÅÃÇÒ ¼ö ÀÖÀ¸¸ç Àбâ Àü¿ë
¿É¼ÇÀ» ¼±ÅÃÇÒ ¼ö ÀÖ´Ù.
ÇÁ·ÎÆÛƼ |
ŸÀÔ |
¼³¸í |
MultiSelect |
bool |
º¹¼ö °³ÀÇ ÆÄÀÏÀ» ¼±ÅÃÇÒ ¼ö ÀÖ´ÂÁö¸¦ ÁöÁ¤ÇÑ´Ù. |
ReadOnlyChecked |
bool |
Àбâ Àü¿ë üũ ¹Ú½º°¡ ¼±ÅõǾî ÀÖ´ÂÁö¸¦ Ç¥½ÃÇÑ´Ù. |
ShowReadOnly |
bool |
Àбâ Àü¿ë üũ ¹Ú½º¸¦ Ç¥½ÃÇÒ °ÍÀΰ¡¸¦ ÁöÁ¤ÇÑ´Ù. |
ÆÄÀÏ ÀúÀå ´ëÈ»óÀÚ´Â ´ÙÀ½ ÇÁ·ÎÆÛƼ¸¦ Ãß°¡·Î °¡Áø´Ù. ¾ø´Â ÆÄÀÏ¿¡
´ëÇÑ Ã³¸® ¹æ½Ä°ú µ¤¾î ¾²±â ¿©ºÎ¸¦ ¼±ÅÃÇÒ ¼ö ÀÖ´Ù.
ÇÁ·ÎÆÛƼ |
ŸÀÔ |
¼³¸í |
CreatePrompt |
bool |
Á¸ÀçÇÏÁö ¾Ê´Â ÆÄÀÏÀ» ¼±ÅÃÇßÀ» ¶§ ÀÌ ÆÄÀÏÀ» ¸¸µé °ÍÀÎÁö »ç¿ëÀÚ¿¡°Ô Áú¹®ÇÑ´Ù. µðÆúÆ®´Â falseÀε¥ ÀÌ °æ¿ì Áú¹®¾øÀÌ ÆÄÀÏÀ» ¸¸µç´Ù. |
OverwritePrompt |
bool |
ÀÌ¹Ì Á¸ÀçÇÏ´Â ÆÄÀÏÀ» ÁöÁ¤ÇßÀ» ¶§ µ¤¾î ½áµµ µÇ´ÂÁö »ç¿ëÀÚ¿¡°Ô Áú¹®ÇÑ´Ù. ÀÌ
°ªÀÌ falseÀ̸é Áú¹®¾øÀÌ ÆÄÀÏÀ» »õ·Î ¸¸µç´Ù. µðÆúÆ®´Â trueÀÌ´Ù. |
ÆÄÀÏÀ» ¿ ¶§´Â Á¸ÀçÇÏÁö ¾Ê´Â ÆÄÀÏÀ» ¸¸µç´Ù°Å³ª µ¤¾î ¾²±â¸¦ ÇÒ ¿°·Á°¡ ¾ø´Ù.
¶Ç ÆÄÀÏÀ» ÀúÀåÇÒ ¶§´Â º¹¼ö ¼±ÅÃÀ̳ª Àбâ Àü¿ëÀÌ Àǹ̰¡ ¾ø´Ù. ±×·¡¼ µÎ ´ëÈ»óÀÚÀÇ Å¬·¡½º°¡
µû·Î ¼±¾ðµÇ¾î ÀÖÀ¸¸ç °øÅë ¼Ó¼ºÀº FileDialog·ÎºÎÅÍ »ó¼Ó¹Þµµ·Ï µÇ¾î ÀÖ´Ù. ´ÙÀ½Àº ÆÄÀÏ ¿±â ´ëÈ»óÀÚ¸¦ »ç¿ëÇÏ´Â °£´ÜÇÑ ¿¹Á¦ÀÌ´Ù.
OpenFile |
using
System; ~ using System.Windows.Forms; namespace
OpenFile { public
partial class Form1 : Form { public
Form1() { InitializeComponent(); } private
void button1_Click(object sender, EventArgs e) { if
(openFileDialog1.ShowDialog() == DialogResult.OK) { MessageBox.Show(openFileDialog1.FileName
+ "¸¦ ¼±ÅÃÇß½À´Ï´Ù."); } } } } |
ºó Æû¿¡ FileOpenDialog ÄÁÆ®·Ñ°ú ÀÌ ´ëÈ»óÀÚ¸¦ È£ÃâÇÏ´Â
¹öÆ°À» ¹èÄ¡Çß´Ù. ÆÄÀÏ ¿±â ´ëÈ»óÀÚ´Â º°µµÀÇ ¸í·ÉÀ» ³»¸®±â Àü¿¡´Â º¸ÀÌÁö ¾ÊÀ¸¹Ç·Î ¾Æ·¡ÂÊÀÇ Æ®·¹ÀÌ¿¡
¹èÄ¡µÈ´Ù.
Æ®·¹ÀÌ¿¡¼ ¼±ÅÃÇÑ ÈÄ ¼Ó¼ºÃ¢¿¡¼ ÇÁ·ÎÆÛƼ¸¦ ¼öÁ¤Ç쵂 µðÆúÆ® ÇÁ·ÎÆÛƼ·Îµµ ÆÄÀÏÀ» ¼±ÅÃÇϴµ¥´Â º° ¹®Á¦°¡ ¾ø´Ù. ¹öÆ°ÀÇ Click À̺¥Æ® Çڵ鷯¿¡¼ ShowDialog ¸Þ¼µå¸¦ È£ÃâÇÏ¿© ÆÄÀÏ ¿±â ´ëÈ»óÀÚ¸¦ ½ÇÇàÇÑ´Ù. ´Ã»ó
ºÁ¿À´ø Àͼ÷ÇÑ ´ëÈ»óÀÚ°¡ ³ªÅ¸³´Ù.
°øÅë ´ëÈ»óÀÚ´Â ¿î¿µÃ¼Á¦ ¹öÀü¿¡ µû¶ó ¸ð¾çÀ̳ª ±â´É¿¡ Á¶±Ý¾¿ Â÷ÀÌ°¡ ÀÖ´Ù. À§
±×¸²Àº À©µµ¿ì10ÀÇ ÆÄÀÏ ¿±â ´ëÈ»óÀÚÀÌ¸ç ºñ½ºÅ¸, XP¿¡¼´Â
´ÙÀ½ ´ëÈ»óÀÚ°¡ ³ªÅ¸³´Ù. ¸ð¾çÀÌ ´Ù¸¦ »Ó »ç¿ë ¹æ¹ýÀº °ÅÀÇ µ¿ÀÏÇÏ´Ù.
ÀÌ ´ëÈ»óÀÚ´Â °ÅÀÇ Å½»ö±â¿Í °°¾Æ µå¶óÀ̺곪 Æú´õ¸¦ ¸¶À½´ë·Î À̵¿ÇÒ ¼ö ÀÖÀ¸¸ç ³×Æ®¿÷ Á¢¼Ó±îÁö °¡´ÉÇÏ´Ù. ÇÊ¿äÇÏ´Ù¸é ÆÄÀÏÀ» º¹»çÇϰųª »èÁ¦ÇÏ´Â °ü¸®µµ ÇÒ ¼ö ÀÖ´Ù. »ç¿ëÀÚ°¡
È®ÀÎ ¹öÆ°À» ´©¸£¸é OK°¡ ¸®ÅϵǸç À̶§ »ç¿ëÀÚ°¡ ¾î¶² ÆÄÀÏÀ» ¼±ÅÃÇß´ÂÁö FileName ÇÁ·ÎÆÛƼ¸¦ ÀÐ¾î ¸Þ½ÃÁö ¹Ú½º·Î Ãâ·ÂÇß´Ù.
ÆÄÀÏ ¿±â ´ëÈ»óÀÚ´Â ÆÄÀÏÀÇ °æ·Î¸¸ ÀԷ¹ÞÀ» »Ó ½ÇÁ¦·Î ÆÄÀÏ ÀÔÃâ·ÂÀº ÇÏÁö ¾Ê´Â´Ù. ÀԷ¹ÞÀº °æ·ÎÀÇ ÆÄÀÏÀ» ¿¾î ÀÔÃâ·ÂÇÏ´Â ÄÚµå´Â µû·Î ÀÛ¼ºÇØ¾ß ÇÑ´Ù. ¿¹Á¦¿¡¼´Â
¸Þ½ÃÁö ¹Ú½º·Î °æ·Î¸¸ Ãâ·ÂÇߴµ¥ if ºí·ÏÀÇ ¾ÈÂÊ¿¡´Â À¸·Ê ÆÄÀÏÀ» ´ë»óÀ¸·Î ÀÛ¾÷ÇÏ´Â Äڵ尡 µû¶ó ¿Â´Ù. ´ÙÀ½ ÄÚµå´Â ÆÄÀÏ ¿±â ´ëÈ»óÀÚÀÇ ¿©·¯ ÇÁ·ÎÆÛƼ¸¦ ´Ù¾çÇÏ°Ô ¹Ù²ã È£ÃâÇÑ´Ù.
private void button1_Click(object sender,
EventArgs e) {
openFileDialog1.InitialDirectory
= "C:\\";
openFileDialog1.Title
= "ÆÄÀÏÀ» Àì½Î°Ô °í¸£¼Å";
openFileDialog1.Filter
= "ÅؽºÆ® ÆÄÀÏ|*.txt|¸ðµç ÆÄÀÏ|*.*";
openFileDialog1.ShowReadOnly
= true;
openFileDialog1.Multiselect
= true;
if
(openFileDialog1.ShowDialog() == DialogResult.OK) {
foreach
(string file in openFileDialog1.FileNames) {
MessageBox.Show(file
+ "¸¦ ¼±ÅÃÇß½À´Ï´Ù.");
}
}
}
ShowDialog ¸Þ¼µå·Î ´ëÈ»óÀÚ¸¦ ¿±â Àü¿¡ ÇÁ·ÎÆÛƼ¸¦ ÀÌ°Í
Àú°Í ¹Ù²ã º¸¾Ò´Ù. ½ÇÇàÇØ º¸°í ¾Õ ÄÚµå¿Í ¾î¶² Á¡ÀÌ ´Þ¶óÁ³´ÂÁö ºñ±³ÇØ º¸¾Æ¶ó. ´ëÈ»óÀÚ°¡ ¿¸®ÀÚ ¸¶ÀÚ C µå¶óÀ̺êÀÇ ·çÆ® µð·ºÅ͸®°¡ Ç¥½ÃµÇ¸ç ŸÀÌƲ
¹Ù¿¡´Â "ÆÄÀÏÀ» Àì½Î°Ô °í¸£¼Å"¶ó´Â Á¡ÀÝÀº
¾È³»¹®µµ ÀûÇô ÀÖ´Ù. ÇÊÅÍ ÄÞº¸ ¹Ú½º¸¦ ¿¾î º¸¸é ÅؽºÆ® ÆÄÀÏ°ú ¸ðµç ÆÄÀÏ µÎ Á¾·ùÀÇ Çü½ÄÀÌ Áö¿øµÇ¸ç
ÆÄÀÏ Çü½Ä ¾Æ·¡ÂÊ¿¡´Â "Àбâ Àü¿ëÀ¸·Î ¿±â"¶ó´Â
üũ ¹Ú½º°¡ ¹èÄ¡µÇ¾î ÀÖ´Ù.
MultiSelect ÇÁ·ÎÆÛƼ¸¦
true·Î ÁöÁ¤ÇßÀ¸¹Ç·Î Ctrl, Shift Å°¿Í ÇÔ²² ¿©·¯ °³ÀÇ ÆÄÀÏÀ» ¼±ÅÃÇÒ ¼ö ÀÖÀ¸¸ç
µå·¡±×ÇÏ¿© ¹üÀ§¸¦ ÇѲ¨¹ø¿¡ ¼±ÅÃÇÒ ¼öµµ ÀÖ´Ù. º¹¼ö ¼±ÅÃÀ» ÇßÀ» ¶§´Â
FileName ÇÁ·ÎÆÛƼ°¡ ¾Æ´Ñ FileNames ÇÁ·ÎÆÛƼ¸¦ Àд´Ù. ¿¹Á¦¿¡¼´Â foreach·Î ·çÇÁ¸¦ µ¹¸ç ¼±ÅÃÇÑ ¸ðµç ÆÄÀÏÀ» ¸Þ½ÃÁö
¹Ú½º·Î ÀÏÀÏÀÌ Ãâ·ÂÇØ º¸¾Ò´Ù. ÆÄÀÏ ÀúÀå ´ëÈ»óÀÚµµ »ç¿ëÇÏ´Â ¹æ¹ýÀº µ¿ÀÏÇÏ´Ù.
ÆÄÀÏ ¿±â ´ëÈ»óÀÚ´Â ÆÄÀϸ¸ ¼±ÅÃÇÒ ¼ö ÀÖÀ¸¸ç Æú´õ´Â ¼±ÅÃÇÒ ¼ö ¾ø´Ù. Æú´õµµ
¸ñ·Ï¿¡ ³ª¿ÀÁö¸¸ Æú´õ ¾ÈÀÇ ÆÄÀÏÀ» À§ÇÑ ÁøÀÔÁ¡ÀÏ »ÓÀÌ¾î¼ Æú´õ¸¦ ´õºíŬ¸¯ÇÏ¸é ¾ÈÀ¸·Î µé¾î°¡ ¹ö¸°´Ù. ±×·¡¼
ÆÄÀÏ ¿±â ´ëÈ»óÀڷδ Æú´õ¸¦ ¼±ÅÃÇÒ ¼ö ¾øÀ¸¸ç º°µµ·Î Á¦°øµÇ´Â Æú´õ ¼±Åà ´ëÈ»óÀÚ¸¦ »ç¿ëÇÑ´Ù. ÀÌ
´ëÈ»óÀÚ¿¡´Â ÆÄÀÏÀº »©°í ¿À·ÎÁö Æú´õÀÇ ¸ñ·Ï¸¸ ³ªÅ¸³´Ù. ¼³Ä¡ ÇÁ·Î±×·¥¿¡¼ ¼³Ä¡ °æ·Î¸¦ ¹°À» ¶§ ÀÌ
´ëÈ»óÀÚ¸¦ »ç¿ëÇÑ´Ù.
Æú´õ ¼±Åà ´ëÈ»óÀÚ´Â ¾ö¹ÐÈ÷ ¸»ÇÏÀÚ¸é ¿î¿µÃ¼Á¦°¡ Á¦°øÇÏ´Â °øÅë ´ëÈ»óÀÚ´Â ¾Æ´Ï´Ù. ´Ù¸¸ ½©, ±¸Ã¼ÀûÀ¸·Î Ž»ö±â°¡ Á¦°øÇÏ´Â È®Àå ÇÔ¼ö¿¡ ÀÇÇØ Áö¿øµÇ´Âµ¥
Ž»ö±â°¡ ¼³Ä¡µÇÁö ¾ÊÀº ½Ã½ºÅÛÀº ¾øÀ¸¹Ç·Î ¾ðÁ¦³ª »ç¿ëÇÒ ¼ö ÀÖ´Ù. ´å³Ý¿¡¼´Â ÆíÀÇ»ó °øÅë ´ëÈ»óÀÚÀÇ
ÀÏÁ¾À¸·Î ºÐ·ùÇϸç CommonDialog·ÎºÎÅÍ ÆÄ»ýµÈ´Ù. ÆÄÀÏ
´ëÈ»óÀÚ¿¡ ºñÇØ °£´ÜÇϱ⠶§¹®¿¡ ÇÁ·ÎÆÛƼÀÇ ¸ñ·Ïµµ ¸¹Áö ¾Ê´Ù.
ÇÁ·ÎÆÛƼ |
ŸÀÔ |
¼³¸í |
Description |
string |
´ëÈ»óÀÚ À§ÂÊÀÇ ¼³¸í ÅؽºÆ®ÀÌ´Ù. ¾î¶² Æú´õ¸¦ ¼±ÅÃÇ϶ó´Â °£´ÜÇÑ ¾È³»¹®À» Ç¥½ÃÇÒ
¼ö ÀÖ´Ù. |
RootFolder |
SpecialFolder |
°Ë»öÀ» ½ÃÀÛÇÒ ·çÆ® Æú´õ¸¦ ÁöÁ¤ÇÑ´Ù. µðÆúÆ®´Â DesktopÀ̹ǷΠ¹ÙÅÁ È¸é ¾Æ·¡ÀÇ ¸ðµç Æú´õ¸¦ °Ë»öÇÒ ¼ö ÀÖ´Ù. |
SelectedPath |
string |
»ç¿ëÀÚ°¡ ¼±ÅÃÇÑ °æ·ÎÀÌ´Ù. |
ShowNewFolderButton |
bool |
»õ Æú´õ ¹öÆ°À» Ç¥½ÃÇÑ´Ù. ÀÌ ¹öÆ°ÀÌ ÀÖÀ¸¸é Æú´õ¸¦ ¼±ÅÃÇÏ´Â Áß¿¡ »ç¿ëÀÚ°¡
»õ·Î¿î Æú´õ¸¦ ¸¸µé ¼öµµ ÀÖ´Ù. |
µðÆúÆ® ÇÁ·ÎÆÛƼ°¡ ¹«³ÇÏ°Ô ¼³Á¤µÇ¾î ÀÖÀ¸¹Ç·Î º°´Ù¸¥ ¼öÁ¤¾øÀÌ °ð¹Ù·Î »ç¿ëÇÒ ¼ö ÀÖ´Ù. Æû¿¡ FolderBrowserDialog ÄÁÆ®·Ñ°ú ´ëÈ»óÀÚ È£ÃâÀ»
À§ÇÑ ¹öÆ°À» ¹èÄ¡ÇÏ°í ´ÙÀ½ Äڵ带 ÀÛ¼ºÇÑ´Ù.
SelectFolder |
using
System; ~ using System.Windows.Forms; namespace
SelectFolder { public
partial class Form1 : Form { public
Form1() { InitializeComponent(); } private
void button1_Click(object sender, EventArgs e) { if
(folderBrowserDialog1.ShowDialog() == DialogResult.OK) { MessageBox.Show(folderBrowserDialog1.SelectedPath
+ "¸¦ ¼±ÅÃÇß½À´Ï´Ù."); } } } } |
È£Ãâ ¹æ¹ýÀº ÆÄÀÏ ¿±â ´ëÈ»óÀÚ¿Í °°´Ù. ShowDialog·Î ´ëÈ»óÀÚ¸¦
¶ç¿ì°í OK°¡ ¸®ÅϵǾúÀ¸¸é SelectedPath ÇÁ·ÎÆÛƼ¸¦
ÀÐ¾î »ç¿ëÀÚ°¡ ¾î¶² Æú´õ¸¦ ¼±ÅÃÇß´ÂÁö Á¶»çÇÑ´Ù. ´ÙÀ½ ´ëÈ»óÀÚ°¡ ³ªÅ¸³´Ù.
ÀÌ ´ëÈ»óÀÚ¿¡¼ µå¶óÀ̺ê¿Í Æú´õ¸¦ ¼±ÅÃÇÑ ÈÄ È®ÀÎ ¹öÆ°¸¸ ´©¸£¸é µÈ´Ù. ÇÁ·Î±×·¥À»
¼³Ä¡ÇÒ ¿ëµµ·Î Æú´õ¸¦ ¼±ÅÃÇÒ ¶§´Â ¾Æ·¡ ÂÊÀÇ "»õ Æú´õ ¸¸µé±â" ¹öÆ°À» ´·¯ »õ·Î¿î Æú´õ¸¦ ¸¸µé ¼öµµ ÀÖ´Ù. ¿¹Á¦¿¡¼´Â
¼±ÅÃÇÑ Æú´õÀÇ °æ·Î¸¦ ¸Þ½ÃÁö ¹Ú½º·Î Ãâ·ÂÇß´Ù.
»ö»óÀ» ÀԷ¹ÞÀ» ¶§´Â ColorDialog Ŭ·¡½º¸¦ »ç¿ëÇÑ´Ù. »ö»óÀº R, G, B ¼¼ Á¤¼ö°ªÀÇ Á¶ÇÕÀ¸·Î ÀÔ·ÂÇÒ ¼ö ÀÖÁö¸¸ Á¤¼ö¸¸À¸·Î´Â
½ÇÁ¦ »ö»óÀ» À¯ÃßÇϱ⠾î·Æ´Ù. »ö»ó ¼±Åà ´ëÈ»óÀÚ¸¦ »ç¿ëÇϸé Á÷Á¢ º¸¸é¼ ¼±ÅÃÇÒ ¼ö ÀÖ´Ù. »ç¿ëÇÏ´Â ¹æ¹ýÀº ÆÄÀÏ ¿±â ´ëÈ»óÀÚ¿Í °ÅÀÇ µ¿ÀÏÇϹǷΠÇÁ·ÎÆÛƼ ¸ñ·Ï¸¸ °£´ÜÇÏ°Ô Á¤¸®ÇØ º¸ÀÚ.
ÇÁ·ÎÆÛƼ |
ŸÀÔ |
¼³¸í |
AllowFullOpen |
bool ¨â |
»ç¿ëÀÚ Á¤ÀÇ »ö»óÀ» ¼±ÅÃÇÒ ¼ö ÀÖ´ÂÁö¸¦ ÁöÁ¤ÇÑ´Ù. ÀÌ ÇÁ·ÎÆÛƼ°¡ trueÀÌ¸é ´ëÈ»óÀÚ¸¦ ´õ Å©°Ô ÆîÃÄ Á÷Á¢ »ö»óÀ» ¼±ÅÃÇÒ ¼ö ÀÖ´Ù. |
AnyColor |
bool ¨â |
»ç¿ë °¡´ÉÇÑ »öÀÌ ¸ðµÎ Ç¥½ÃµÇ´ÂÁö ÁöÁ¤ÇÑ´Ù. |
Color |
Color |
»ç¿ëÀÚ°¡ ¼±ÅÃÇÑ »ö»óÀÌ´Ù. |
CustomColors |
int[] |
»ç¿ëÀÚ Á¤ÀÇ »ö»óÀÇ ¹è¿ÀÌ´Ù. |
FullOpen |
bool ¨â |
´ëÈ»óÀÚ°¡ ¿¸± ¶§ »ç¿ëÀÚ Á¤ÀÇ»öÀ» ¼±ÅÃÇÏ´Â ºÎºÐÀÌ º¸ÀÌ´ÂÁö ÁöÁ¤ÇÑ´Ù. |
Options |
int ¨â |
´å³Ý ¶óÀ̺귯¸®¿¡¼ ³»ºÎÀûÀ¸·Î »ç¿ëÇϸç Äڵ忡¼´Â »ç¿ëÇÏÁö ¾Ê´Â´Ù. Win32ÀÇ
Ç÷¡±×¿¡ ÇØ´çÇÑ´Ù. |
ShowHelp |
bool ¨â |
µµ¿ò¸» ¹öÆ°À» Ç¥½ÃÇÒ °ÍÀΰ¡¸¦ ÁöÁ¤ÇÑ´Ù. |
SolidColorOnly |
bool ¨â |
´Ü»ö¸¸ ¼±ÅÃÇÒ ¼ö ÀÖ´ÂÁö ÁöÁ¤ÇÑ´Ù. ÀÌ ÇÁ·ÎÆÛƼ°¡ falseÀ̸é 256 »ö»ó ÀÌÇÏÀÇ ¸ðµå¿¡¼ È¥ÇÕ»öÀ» ¼±ÅÃÇÒ ¼ö
ÀÖ´Ù. |
ShowDialog ¸Þ¼µå·Î ´ëÈ»óÀÚ¸¦ È£ÃâÇÑ ÈÄ Color ÇÁ·ÎÆÛƼ¸¦ ÀÐÀ¸¸é »ç¿ëÀÚ°¡ ¾î¶² »ö»óÀ» ¼±ÅÃÇß´ÂÁö ¾Ë ¼ö ÀÖ´Ù. ´ëÈ»óÀÚÀÇ
¸ð¾çÀº ´ÙÀ½°ú °°´Ù. Æò¼Ò¿¡´Â ±âº»»ö¸¸ º¸ÀÌÁö¸¸ ÆîÄ¡¸é »ç¿ëÀÚ°¡ Á÷Á¢ »öÀ» ¼±ÅÃÇÒ ¼ö ÀÖµµ·Ï È®ÀåµÈ´Ù. FullOpen ÇÁ·ÎÆÛƼ¸¦ true·Î ÁöÁ¤Çϸé óÀ½ºÎÅÍ ÆîÄ£ »óÅ·Î
¿¸°´Ù.
±Û²ÃÀ» ¼±ÅÃÇÒ ¶§´Â FontDialog Ŭ·¡½º¸¦ »ç¿ëÇÑ´Ù. ±Û²Ãµµ Á¤º¸°¡ ¸¹¾Æ Á÷Á¢ ÀԷ¹ޱâ´Â ±²ÀåÈ÷ ±î´Ù·Î¿îµ¥ °øÅë ´ëÈ»óÀÚ¸¦ »ç¿ëÇÏ¸é ±Û²Ã À̸§°ú È¿°ú±îÁö º¸¸é¼
¼±ÅÃÇÒ ¼ö ÀÖ´Ù.
ÇÁ·ÎÆÛƼ |
ŸÀÔ |
¼³¸í |
AllowScriptChange |
bool |
½ºÅ©¸³Æ® ÄÞº¸ ¹Ú½ºÀÇ ¹®ÀÚ ÁýÇÕÀ» º¯°æÇÒ ¼ö ÀÖ´ÂÁö ÁöÁ¤ÇÑ´Ù. |
AllowSimulations |
bool |
±Û²Ã ½Ã¹Ä·¹À̼ÇÀ» »ç¿ëÇÒ °ÍÀΰ¡¸¦ ÁöÁ¤ÇÑ´Ù. |
AllowVectorFonts |
bool |
º¤ÅÍ ÆùÆ®¸¦ ¼±ÅÃÇÒ °ÍÀΰ¡¸¦ ÁöÁ¤ÇÑ´Ù. |
AllowVerticalFonts |
bool |
¼¼·Î ¹æÇâ ±Û²ÃÀ» ¼±ÅÃÇÒ °ÍÀΰ¡¸¦ ÁöÁ¤ÇÑ´Ù. ÀϹÝÀûÀ¸·Î ÇÑ±Û ±Û²Ã¿¡´Â ¼¼·Î
¹æÇâ ÆùÆ®¸¦ Àß ¾²Áö ¾ÊÀ¸¹Ç·Î ¼±ÅÃÇÏÁö ¾Ê´Â °ÍÀÌ ÁÁ´Ù. µðÆúÆ®´Â
trueÀÌ´Ù. |
Color |
Color |
¼±ÅÃÇÑ ±Û²ÃÀÇ »ö»óÀÌ´Ù. |
FixedPitchOnly |
bool |
°íÁ¤ Æø ±Û²Ã¸¸ ¼±ÅÃÇÒ ¼ö ÀÖ´ÂÁö¸¦ ÁöÁ¤ÇÑ´Ù. |
Font |
Font |
»ç¿ëÀÚ°¡ ¼±ÅÃÇÑ ±Û²ÃÀÌ´Ù. |
FontMustExist |
bool |
Á¸ÀçÇÏÁö ¾ÊÀº ±Û²ÃÀ̳ª ½ºÅ¸ÀÏÀ» ¼±ÅÃÇÏ¸é ¿À·ù ´ëÈ»óÀÚ¸¦ Ç¥½ÃÇÑ´Ù. |
MaxSize |
int |
¼±ÅÃÇÒ ¼ö ÀÖ´Â ÃÖ´ë Å©±â |
MinSize |
int |
¼±ÅÃÇÒ ¼ö ÀÖ´Â ÃÖ¼Ò Å©±â |
ScriptsOnly |
bool |
ANSI »Ó¸¸ ¾Æ´Ï¶ó ºñ OEM ±Û²Ãµµ
¼±ÅÃÇÒ ¼ö ÀÖ´Ù. |
ShowApply |
bool |
Àû¿ë ¹öÆ°À» º¸ÀÏ °ÍÀΰ¡¸¦ ÁöÁ¤ÇÑ´Ù. |
ShowColor |
bool |
»ö»óÀ» ¼±ÅÃÇÒ ¼ö ÀÖ´Â ÄÁÆ®·ÑÀ» Ç¥½ÃÇÒ °ÍÀΰ¡¸¦ ÁöÁ¤ÇÑ´Ù. »ö»óÀº ±Û²Ã°ú Á÷Á¢ÀûÀÎ
¿¬°üÀÌ ¾ø±â ¶§¹®¿¡ µðÆúÆ® °ªÀº falseÀÌ´Ù. |
ShowEffects |
bool |
Ãë¼Ò¼±, ¹ØÁÙ µîÀ» ¼±ÅÃÇÒ ¼ö Àִ üũ ¹Ú½ºÀÇ Ç¥½Ã ¿©ºÎ¸¦ ÁöÁ¤ÇÑ´Ù. |
ShowHelp |
bool |
µµ¿ò¸» ¹öÆ°À» Ç¥½ÃÇÒ °ÍÀΰ¡¸¦ ÁöÁ¤ÇÑ´Ù. |
´ëºÎºÐÀÇ ÇÁ·ÎÆÛƼ°¡ bool ŸÀÔÀε¥ ƯÁ¤ È¿°ú¸¦ ÀԷ¹ÞÀ» °ÍÀΰ¡, ƯÁ¤ ÇüÅÂÀÇ ±Û²ÃÀ» Æ÷ÇÔÇÒ °ÍÀΰ¡ µîÀÇ ¿É¼ÇÀ» ÁöÁ¤ÇÑ´Ù. µðÆúÆ®
ÇÁ·ÎÆÛƼ¸¦ »ç¿ëÇßÀ» ¶§ ´ÙÀ½ ´ëÈ»óÀÚ°¡ ³ªÅ¸³´Ù. ±Û²ÃÀÇ À̸§, ½ºÅ¸ÀÏ, Å©±â, È¿°ú µîÀ» ¼±ÅÃÇÒ ¼ö ÀÖÀ¸¸ç ¹Ì¸® º¸±âµµ Á¦°øµÈ´Ù.
´ÙÀ½ ¿¹Á¦´Â Æû¿¡ ¹®ÀÚ¿À» Ãâ·ÂÇ쵂 ¹®ÀÚ¿ÀÇ »ö»ó°ú ±Û²ÃÀ» °øÅë ´ëÈ»óÀÚ·Î ÀԷ¹޴´Ù. Æû¿¡ ¹öÆ° µÎ °³¿Í FontDialog, ColorDialog ÄÁÆ®·ÑÀ»
°¢°¢ Çϳª¾¿ ¹èÄ¡ÇÑ´Ù. ¹öÆ°ÀÇ Ä¸¼Ç¸¸ "±Û²Ã ¼±ÅÃ", "»ö»ó ¼±ÅÃ"À¸·Î ¹Ù²Ù°í ³ª¸ÓÁö´Â µðÆúÆ®
ÇÁ·ÎÆÛƼ¸¦ ¾²±â·Î ÇÑ´Ù.
ColorFont |
using
System; ~ using System.Windows.Forms; namespace
ColorFont { public
partial class Form1 : Form { private
Font NowFont; private
Color NowColor; public
Form1() { InitializeComponent(); } private
void Form1_Paint(object sender, PaintEventArgs e) { SolidBrush
S = new SolidBrush(NowColor); e.Graphics.DrawString("´ëÈ»óÀÚ", NowFont, S, 10, 10); } private
void Form1_Load(object sender, EventArgs e) { NowFont
= this.Font; NowColor
= Color.Black; } private
void button1_Click(object sender, EventArgs e) { fontDialog1.Font
= NowFont; if
(fontDialog1.ShowDialog() == DialogResult.OK) { NowFont
= fontDialog1.Font; Invalidate(); } } private
void button2_Click(object sender, EventArgs e) { colorDialog1.Color
= NowColor; if
(colorDialog1.ShowDialog() == DialogResult.OK) { NowColor
= colorDialog1.Color; Invalidate(); } } } } |
NowFont¿Í NowColor°¡
Çʵå·Î ¼±¾ðµÇ¾î ÀÖÀ¸¸ç »ý¼ºÀÚ¿¡¼ µðÆúÆ® ÆùÆ®¿Í °ËÁ¤»öÀ¸·Î ÃʱâÈÇß´Ù. Paint À̺¥Æ®¿¡¼ ÀÌ Çʵ带
ÂüÁ¶ÇÏ¿© "´ëÈ»óÀÚ"¶ó´Â ¹®ÀÚ¿À» Ãâ·ÂÇÑ´Ù. NowFont´Â DrawStringÀÇ Àμö·Î Àü´ÞµÇ°í NowColor´Â ±Û²ÃÀ» Ãâ·ÂÇÏ´Â ºê·¯½Ã¿¡ Àû¿ëÇÑ´Ù. ÃÖÃÊ ½ÇÇàÇϸé
¾ÆÁÖ ÀÛÀº °ËÁ¤»ö ±Û²Ã·Î Ãâ·ÂµÇÁö¸¸ ¾Æ·¡ ÂÊÀÇ µÎ ¹öÆ°À¸·Î ±Û²Ã°ú »ö»óÀ» ÆíÁýÇÒ ¼ö ÀÖ´Ù.
µÎ ¹öÆ°ÀÇ Click À̺¥Æ® Çڵ鷯´Â Çü½ÄÀÌ °ÅÀÇ °°´Ù. ÇöÀç ¼³Á¤°ªÀ» ´ëÈ»óÀÚ·Î Àü´ÞÇÏ°í ShowDialog¸¦ È£ÃâÇÑ ÈÄ OK°¡ ¸®ÅϵǾúÀ¸¸é ´Ù½Ã µ¹·Á¹Þ´Â ½ÄÀÌ´Ù. ±Û²ÃÀÌµç »ö»óÀ̵ç Çϳª¶óµµ
º¯°æµÇ¸é Invalidate¸¦ È£ÃâÇÏ¿© ´Ù½Ã ±×¸°´Ù.