* °³¿ä
ÄÄÆ÷³ÍÆ® À§Ä¡, Å©±â, ¹èÄ¡¿Í °ü·ÃµÈ Layout ¼Ó¼º¿¡ ´ëÇØ ¼³¸íÇÕ´Ï´Ù.
* »ó¼¼ ¼³¸í
ÄÄÆ÷³ÍÆ®ÀÇ ¼Ó¼ºÃ¢ LayoutºÎºÐ¿¡ ¾Æ·¡¿Í °°Àº ¼Ó¼ºµéÀÌ ÀÖ½À´Ï´Ù.
Location, Size, Anchor, Dock, PercentSize, MaximumSize, MinimumSize, LogicalSize, AutoScroll,
AllowMove, AllowReSize, AllowMinimize, AllowMaximize, AllowDestroy |
ÀÌ ¼Ó¼ºµéÀ» Àß È°¿ëÇϸé ÄÄÆ÷³ÍÆ® À§Ä¡ ¼³Á¤À̳ª Å©±â ¼³Á¤°ú ¹èÄ¡¸¦ Æí¸®ÇÏ°Ô µðÀÚÀÎÇÒ ¼ö ÀÖ½À´Ï´Ù.
1. Location
LocationÀº ºÎ¸ð ÄÁÅ×À̳ʿ¡¼ ÇØ´ç ÄÄÆ÷³ÍÆ® ¿ÞÂÊ »ó´Ü ÁÂÇ¥¸¦ ³ªÅ¸³À´Ï´Ù. (´ÜÀ§:Pixel)
ºÎ¸ð ÄÁÅ×À̳ʶõ Board, Panel, VBox, HBox, GroupBox, TabControl, BoardView °°Àº ´Ù¸¥ ÄÄÆ÷³ÍÆ®µéÀ» ´ãÀ» ¼ö ÀÖ´Â ÄÄÆ÷³ÍÆ®ÀÔ´Ï´Ù.
´ÙÀ½ ±×¸²¿¡¼ ÆĶõÁ¡¿¡¼ »¡°£Á¡±îÁöÀÇ X, YÀ§Ä¡°¡ Location ¼Ó¼º¿¡ ¼³Á¤µË´Ï´Ù. Panel À§Ä¡°¡ º¯°æµÇ¾îµµ Panel³»ÀÇ ÄÄÆ÷³ÍÆ®µéÀº LocationÀÌ À¯ÁöµË´Ï´Ù.
(½ºÅ©¸³Æ®)
Button2.Location = "20,40"; // Left(X),Top(Y)¸¦ °°ÀÌ ¼³Á¤
Button2.Left = "20"; // XÁÂÇ¥
Button2.Top = "40"; // YÁÂÇ¥
Button2.Right = "20"; // ÄÄÆ÷³ÍÆ® ¿À¸¥ÂÊ ¶óÀÎÀÇ XÁÂÇ¥. Left + Width °ú µ¿ÀÏ
Button2.Bottom = "40"; // ÄÄÆ÷³ÍÆ® ÇÏ´ÜÀÇ YÁÂÇ¥. Top + Height °ú µ¿ÀÏ |
2. Size
ÄÄÆ÷³ÍÆ®ÀÇ ³Êºñ, ³ôÀÌ Å©±âÀÔ´Ï´Ù. (´ÜÀ§:Pixel)
(½ºÅ©¸³Æ®)
Button2.Size = "100,20"; // Width, Height
Button2.SetSize(100,20); // Width, Height
Button2.Width = 100;
Button2.Height = 20; |
3. Anchor
¾ÞÄ¿´Â ºÎ¸ð ÄÁÅ×À̳ÊÀÇ Å׵θ®¿¡¼ ÇØ´ç ÄÄÆ÷³ÍÆ®ÀÇ »ó´ë À§Ä¡¸¦ °íÁ¤½ÃÅ°±â À§ÇÑ ¹æÇâÀ» ³ªÅ¸³À´Ï´Ù.
ºÎ¸ð ÄÁÅ×À̳ÊÀÇ Å©±â¸¦ º¯°æÇÒ °æ¿ì Anchor¿¡ ¼³Á¤µÈ ºÎ¸ðÀÇ Å׵θ®¿¡¼ ÇØ´ç ÄÄÆ÷³ÍÆ®¿ÍÀÇ °£°ÝÀÌ µ¿ÀÏÇÏ°Ô À¯ÁöµË´Ï´Ù.
"Top", "Bottom", "Left", "Right" ³×°¡Áö °ª Áß¿¡¼ ´ÙÁß ¼±ÅÃÀÌ °¡´ÉÇÕ´Ï´Ù.
¿¹¸¦ µé¾î, º¸µå »çÀÌÁî°¡ resizeµÇ¸é¼ ¹öÆ°µéÀÌ ÇÏ´Ü¿¡ °íÁ¤ÀûÀ¸·Î º¸¿©Áö±â À§ÇØ ¹öÆ°ÀÇ Anchor°ªÀ» "Top, Left" ¿¡¼
"Bottom, Right"·Î º¯°æÇÏ¸é º¸µå ¿À¸¥ÂÊ ÇÏ´Ü ÁÂÇ¥¸¦ ±âÁØÀ¸·Î ¹öÆ° À§Ä¡°¡ À¯ÁöµË´Ï´Ù.
(Âü°í·Î, DocumentÀÇ AutoAdjustSize¼Ó¼º°ªÀ» True·Î ¼³Á¤ÇÏ¸é º¸µå resize°¡ °¡´ÉÇÕ´Ï´Ù.)
(½ºÅ©¸³Æ®)
AnchorConst °ªµéÀÇ Á¶ÇÕÀ¸·Î ¼³Á¤ÇÒ ¼ö ÀÖÀ¸¸ç ±âº» °ªÀº "Top,Left"ÀÔ´Ï´Ù.
Button1.Anchor = "Top, Right"; |
4. Dock
DockÀº »óÀ§ ÄÁÅ×À̳ʿ¡ ÇØ´ç ÄÄÆ÷³ÍÆ®°¡ µµÅ·µÇ´Â À§Ä¡·Î½á "NONE", "TOP", "LEFT", "BOTTOM", "RIGHT", "FILL" ÁßÀÇ °ªÀ» ¼³Á¤ÇÒ ¼ö ÀÖ½À´Ï´Ù.
ȸéÀÌ resize µÉ ¶§ (DocumentÀÇ AutoAdjustSize°¡ True¿©¾ß ÇÔ) °¢ ¼Ó¼º¿¡ ´ëÇØ ÄÄÆ÷³ÍÆ® Width, Height°¡ ¾Æ·¡¿Í °°ÀÌ º¯°æµË´Ï´Ù.
Dock |
Width |
Height |
NONE (default) |
°íÁ¤ |
°íÁ¤ |
TOP |
°¡º¯ |
°íÁ¤ |
LEFT |
°íÁ¤ |
°¡º¯ |
BOTTOM |
°¡º¯ |
°íÁ¤ |
RIGHT |
°íÁ¤ |
°¡º¯ |
FILL |
°¡º¯ |
°¡º¯ |
¿¹¸¦ µé¾î ÄÄÆ÷³ÍÆ®¸¦ DockingÇÑ °æ¿ì¿¡ ȸé Å©±â¸¦ º¯°æÇϸé DockingµÈ ÄÄÆ÷³ÍÆ®ÀÇ Width, Height°¡ ¾Æ·¡¿Í °°ÀÌ º¯°æµË´Ï´Ù.
(½ºÅ©¸³Æ®)
DockConst °ªÀ¸·Î ¼³Á¤ÇÒ ¼ö ÀÖÀ¸¸ç ±âº» °ªÀº "None"ÀÔ´Ï´Ù.
Label1.Dock = DockConst.Fill; |
5. PercentSize
PercentSize´Â ÄÄÆ÷³ÍÆ®ÀÇ »óÀ§ ÄÁÅ×À̳ʿ¡ ´ëÇÑ »çÀÌÁî ºñÀ²ÀÔ´Ï´Ù. 100%ÀÎ °æ¿ì¿¡´Â ÄÄÆ÷³ÍÆ®ÀÇ ³Êºñ¿Í ³ôÀÌ°¡ »óÀ§ ÄÁÅ×ÀÌ³Ê¿Í °°¾ÆÁý´Ï´Ù.
(½ºÅ©¸³Æ®)
width, height¿¡ ´ëÇÑ % °ªÀ¸·Î ¼³Á¤ÇÒ ¼ö ÀÖ½À´Ï´Ù.
Button1.PercentSize = "50, 100"; |
6. MaximumSize
ÄÄÆ÷³ÍÆ®ÀÇ ÃÖ´ë Á¦ÇÑ Å©±âÀÔ´Ï´Ù. PercentSize ¼Ó¼º°ªÀÌ ÀÖ¾î¾ß Àû¿ëµË´Ï´Ù.
(½ºÅ©¸³Æ®)
width, height¿¡ ´ëÇÑ pixel °ªÀ¸·Î ¼³Á¤ÇÒ ¼ö ÀÖ½À´Ï´Ù.
Button1.SetProperty(PropertyNameConst.MaximumSize, "20,20"); |
7. MinimumSize
ÄÄÆ÷³ÍÆ®ÀÇ ÃÖ¼Ò Á¦ÇÑ Å©±âÀÔ´Ï´Ù. PercentSize ¼Ó¼º°ªÀÌ ÀÖ¾î¾ß Àû¿ëµË´Ï´Ù.
(½ºÅ©¸³Æ®)
width, height¿¡ ´ëÇÑ pixel °ªÀ¸·Î ¼³Á¤ÇÒ ¼ö ÀÖ½À´Ï´Ù.
Button1.SetProperty(PropertyNameConst.MinimumSize, "20,20"); |
8. LogicalSize
Board, Hnavigator,Panel,TabPanel,VNavigator ÄÄÆ÷³ÍÆ®ÀÇ ½ºÅ©·Ñ °¡´ÉÇÑ ³»ºÎ Å©±â¸¦ ³ªÅ¸³À´Ï´Ù.
BoardÀÇ Size¼Ó¼ºÀÌ "100, 200" (width, height) ÀÌ°í LogicalSize°¡ "300, 100" (width, height) ¶ó¸é º¸¿©Áö´Â º¸µå »çÀÌÁî´Â 100,200ÀÌÁö¸¸ ½ºÅ©·Ñ·Î º¼ ¼ö ÀÖ´Â ¿µ¿ªÀº 300, 100 ÀÔ´Ï´Ù.
LogicalSize ¼Ó¼º°ªÀÌ Size ¼Ó¼º°ª º¸´Ù Å©¸é AutoScroll¼Ó¼ºÀ» True·Î ÁÖÁö ¾Ê¾Æµµ ½ºÅ©·ÑÀÌ »ý±é´Ï´Ù.
(½ºÅ©¸³Æ®)
width, height¿¡ ´ëÇÑ pixel °ªÀ¸·Î ¼³Á¤ÇÒ ¼ö ÀÖ½À´Ï´Ù. ±âº»°ª "0,0" À̸ç "0,0"ÀÎ °æ¿ì Size¸¦ µû¶ó°©´Ï´Ù.
Board1.LogicalSize = "1000,600"; |
9. AutoScroll
Board, Hnavigator,Panel,TabPanel,VNavigator ÄÄÆ÷³ÍÆ®ÀÇ °æ°è¼± ¹Ù±ù¿¡ À§Ä¡ÇÑ ÀÚ½Ä ÄÄÆ÷³ÍÆ® ±îÁö »ç¿ëÀÚ°¡ ½ºÅ©·ÑÇÏ¿© º¼ ¼ö ÀÖÀ»Áö ¿©ºÎ¸¦ ¼³Á¤ÇÕ´Ï´Ù.
AutoScroll ¼Ó¼º °ªÀÌ trueÀÏ °æ¿ì ÀÚ½Ä ÄÄÆ÷³ÍÆ®ÀÇ À§Ä¡ ¶Ç´Â Å©±â°¡ º¯°æµÇ¸é º¸µåÀÇ LogicalSize ¼Ó¼º °ªµµ ÀÚµ¿À¸·Î º¯°æµË´Ï´Ù. À̶§ ÀÚ½Ä ÄÄÆ÷³ÍÆ®ÀÇ Location°ú Size¸¦ ´õÇÑ °ª Áß °¡Àå Å« °ªÀÌ º¸µåÀÇ LogicalSize·Î ÀÚµ¿ ¼³Á¤µË´Ï´Ù.
AutoScroll ¼Ó¼º °ªÀ» false¿¡¼ true·Î º¯°æÇϸé ÀÚ½Ä ÄÄÆ÷³ÍÆ®ÀÇ Location°ú Size¸¦ ´õÇÑ °ªÀÌ º¸µåÀÇ Å©±âº¸´Ù Å©¸é º¸µåÀÇ LogicalSize¸¦ ´Ã·ÁÁÝ´Ï´Ù.
AutoScroll ¼Ó¼º °ªÀ» true¿¡¼ false·Î º¯°æÇÏ¸é º¸µåÀÇ LogicalSize¸¦ º¯°æÇÏÁö ¾ÊÀ¸¸ç ÀÌÈÄ ÀÚ½Ä ÄÄÆ÷³ÍÆ®ÀÇ À§Ä¡³ª Å©±â°¡ º¯°æµÇ¾îµµ º¸µåÀÇ LogicalSize´Â º¯°æµÇÁö ¾Ê½À´Ï´Ù.
(½ºÅ©¸³Æ®)
Board1.AutoScroll = true; |
10. AllowMove,AllowReSize,AllowMinimize,AllowMaximize,AllowDestroy
BoardView, GroupBox, HBox, Panel, VBox ÄÄÆ÷³ÍÆ®ÀÇ AllowMove ¼Ó¼º °ªÀ» true·Î ¼³Á¤Çϸé Dock ¼Ó¼º °ªÀÌ "None"À¸·Î º¯°æµÇ°í, »ó´Ü¿¡ ŸÀÌƲ ¹Ù¸¦ °¡Áø â ÇüÅ·Πǥ½ÃµË´Ï´Ù. MDI ÇüÅ·Π±¸ÇöÇÒ ¶§µµ »ç¿ëµÇ´Â ¼Ó¼ºÀÔ´Ï´Ù.
AllowMove ¼Ó¼º °ªÀ» false·Î º¯°æÇϸé AllowDestroy, AllowMaximize, AllowMinimize, ShowSystemMenu ¼Ó¼º °ªÀÌ false·Î º¯°æµË´Ï´Ù.
¿¹¸¦ µé¾î Panel¿¡ AllowMode ¼Ó¼ºÀ» true·Î ¼³Á¤ÇÑ °æ¿ì ¾Æ·¡¿Í °°ÀÌ Å¸ÀÌƲ ¹Ù°¡ »ý±â¸é¼ À̵¿°¡´ÉÇÑ »óÅ°¡ µË´Ï´Ù.
AllowReSize ¼Ó¼º °ªÀ» true·Î º¯°æÇϸé ÄÄÆ÷³ÍÆ®ÀÇ AllowMove°¡ trueÀÎ °æ¿ì »ç¿ëÀÚ°¡ ÄÄÆ÷³ÍÆ® Å©±â¸¦ Á¶Á¤ÇÒ ¼ö ÀÖµµ·Ï ¼³Á¤Çϸç, À̵¿ °¡´ÉÇÑ »óÅÂÀÓÀ» ³ªÅ¸³»±â À§ÇØ Å׵θ®°¡ ±½°Ô Ç¥½ÃµË´Ï´Ù.
AllowMaximize ¼Ó¼º °ªÀ» true·Î º¯°æÇϸé AllowMove ¼Ó¼º °ªÀÌ true·Î º¯°æµÇ¸ç, ÄÄÆ÷³ÍÆ®°¡ º°µµÀÇ Ã¢À¸·Î ¶ã ¶§ ÃÖ´ëÈ ¾ÆÀÌÄÜÀÌ È°¼ºÈµÇ¾î Ç¥½ÃµË´Ï´Ù.
AllowMinimize ¼Ó¼º °ªÀ» true·Î º¯°æÇϸé AllowMove¿Í ShowSystemMenu ¼Ó¼º °ªÀÌ true·Î º¯°æµÇ¸ç, ÄÄÆ÷³ÍÆ®°¡ º°µµÀÇ Ã¢À¸·Î ¶ã ¶§ ÃÖ¼ÒÈ ¾ÆÀÌÄÜÀÌ È°¼ºÈµÇ¾î Ç¥½ÃµË´Ï´Ù.
AllowDestroy ¼Ó¼º °ªÀ» true·Î º¯°æÇϸé AllowMove¿Í ShowSystemMenu ¼Ó¼º °ªÀÌ true·Î º¯°æµÇ¸ç, ÄÄÆ÷³ÍÆ®°¡ º°µµÀÇ Ã¢À¸·Î ¶ã ¶§ ´Ý±â ¾ÆÀÌÄÜÀÌ È°¼ºÈµÇ¾î Ç¥½ÃµË´Ï´Ù. »ç¿ëÀÚ°¡ ´Ý±â ¾ÆÀÌÄÜÀ» Ŭ¸¯Çϸé OnPreFinalize¿Í OnFinalize À̺¥Æ®°¡ È£ÃâµÈ ÈÄ ÄÄÆ÷³ÍÆ®°¡ »èÁ¦µË´Ï´Ù.
(½ºÅ©¸³Æ®)
Panel1.AllowMove = true;
Panel1.AllowReSize = true;
Panel1.AllowMinimize = true;
Panel1.AllowMaximize = true;
Panel1.AllowDestroy = true; |
|