2. ·¹ÀÌ¾î º¯°æ (ÇöÀç ·¹À̾î·Î) [VB] |
1. Form_Load
°øÅë·çƾ¿¡ ¼³¸íµÈ ÇÁ·Î±×·¥ ÃʱâÈ °úÁ¤À» Form ·Îµå½Ã¿¡ ¼öÇàÇÕ´Ï´Ù.
Private Sub Form_Load() ' ÇÁ·Î±×·¥ ÃʱâÈ InitApplication ' ÇöÀç ·¹À̾î Ç¥½Ã ShowCurrentLayer End Sub 2. ShowCurrentLayer ¾Æ·¡¿Í °°ÀÌ µµ¸éÀ¸·Î ºÎÅÍ ÇöÀç ·¹À̾î¸íÀ» °¡Á®¿Í¼ TextBox(txtLayer)¿¡ Ç¥½ÃÇÕ´Ï´Ù.
' ÇöÀç ·¹À̾ ¶óº§¿¡ Ç¥½ÃÇÑ´Ù. Private Sub ShowCurrentLayer() ' CLAYER °ªÀ¸·Î ·¹À̾î Ç¥½Ã txtLayer.Text = objAcDoc.GetVariable("CLAYER") End Sub 3. ChangeLayer strLayer¶ó´Â Àμö¸¦ ÀÌ¿ëÇÏ¿© ·¹ÀÌ¾î ¸íÀ» ÀÔ·Â¹Þ¾Æ ¼±ÅÃÇÑ ¿£Æ¼Æ¼µéÀÇ ·¹À̾ º¯°æÇÑ´Ù.
' »ç¿ëÀÚ°¡ ¼±ÅÃÇÑ ¿£Æ¼Æ¼µéÀ» ÁöÁ¤ÇÑ ·¹À̾î·Î º¯°æÇÑ´Ù. Private Sub ChangeLayer(strLayer As String) Dim objSS As AcadSelectionSet Dim objEnt As AcadEntity Dim nCount, i As Integer ' ·¹À̾ ÁöÁ¤µÇÁö ¾ÊÀ¸¸é ½ÇÇàÁ¾·á If strLayer = "" Then MsgBox "·¹À̾ ÁöÁ¤µÇÁö ¾Ê¾Ò½À´Ï´Ù!" Exit Sub End If ' ¿£Æ¼Æ¼¸¦ ¼±ÅÃÇÑ´Ù. Set objSS = objAcDoc.ActiveSelectionSet ' ÇöÀç ¼±Åà »èÁ¦ objSS.Clear ' ȸé»ó¿¡¼ ¼±Åà objSS.SelectOnScreen ' ¿£Æ¼Æ¼ °³¼ö È®ÀÎ nCount = objSS.Count ' ¿£Æ¼Æ¼ °³¼ö¸¸Å ¹Ýº¹ For i = 0 To nCount - 1 ' i¹ø° ¿£Æ¼Æ¼ ¾ò±â Set objEnt = objSS.Item(i) ' ÇØ´ç ¿£Æ¼Æ¼ ·¹ÀÌ¾î º¯°æ objEnt.Layer = strLayer Next ' È¸é °»½Å objAcApp.Update End Sub 4. cmdSelect_Click ¿£Æ¼Æ¼ ¼±Åà ¹öÆ°¿¡ ´ëÇÑ Ã³¸®¸¦ ¼öÇàÇÕ´Ï´Ù.
Private Sub cmdSelect_Click() Hide GetActiveDocument ' ÇöÀç ·¹À̾î·Î º¯°æ ChangeLayer (txtLayer.Text) Show End Sub 5. cmdExit_Click Á¾·á ¹öÆ°¿¡ ´ëÇÑ Ã³¸®¸¦ ¼öÇàÇÕ´Ï´Ù.
Private Sub cmdExit_Click() ' ÇÁ·Î±×·¥ Á¾·á Unload Me End Sub |
°ü·Ã ÀÚ·á [1] ·¹ÀÌ¾î º¯°æ (ÇöÀç ·¹À̾î·Î) [VB & VBA] (18KB) |
Last updated 2002-09-07 by choi@moon-sun.com |