CAD开发者社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

ActiveX 开发指南

相关分类

LayerOn Property (ActiveX)

2023-1-3 12:48| 发布者: admin| 查看: 485| 评论: 0|来自: AutoCAD

摘要: 指定图层的状态。

指定图层的状态。

支持的平台:仅窗口

签名

工 务 局:

object.LayerOn
对象

类型:图层

此属性适用的对象。

属性值

只读:

类型:布尔

  • True:图层已打开。
  • False:图层已关闭。

言论

与关闭的图层关联的对象不会显示在屏幕上或打印。与属性不同,关闭的图层在再生期间生成,但不显示。Freeze

关闭或冻结的图层上的 AutoCAD 曲面和圆是不可见的,但在使用“隐藏”、“着色模式”或“渲染”命令时,它们仍会隐藏对象。

例子

工 务 局:

Sub Example_LayerOn()
    ' This example creates a new layer called "LayerOn".
    ' It then displays the status of the LayerOn property
    ' for the new layer, toggles the status of the
    ' LayerOn property, and again displays its status.
    ' After running this example, you can check the layer
    ' control on the Object Properties tool bar. It will
    ' show the new layer and the latest LayerOn status.
    
    Dim layerObj As AcadLayer
    
    ' Create the new layer
    Set layerObj = ThisDrawing.Layers.Add("LayerOn")
    
    ' Display the LayerOn status of the new layer
    GoSub DISPLAYSTATUS
    
    ' Toggle the status of the LayerOn property for the layer
    layerObj.LayerOn = Not (layerObj.LayerOn)
    
    ' Display the LayerOn status of the new layer
    GoSub DISPLAYSTATUS
    Exit Sub
    
DISPLAYSTATUS:
    If layerObj.LayerOn Then
        MsgBox "Layer " & layerObj.name & " is turned on.", , "LayerOn Example"
    Else
        MsgBox "Layer " & layerObj.name & " is turned off.", , "LayerOn Example"
    End If
    Return
        
End Sub

Visual LISP:

(vl-load-com)
(defun c:Example_LayerOn()
    ;; This example creates a new layer called "LayerOn".
    ;; It then displays the status of the LayerOn property
    ;; for the new layer, toggles the status of the
    ;; LayerOn property, and again displays its status.
    ;; After running this example, you can check the layer
    ;; control on the Object Properties tool bar. It will
    ;; show the new layer and the latest LayerOn status.
    (setq acadObj (vlax-get-acad-object))
    (setq doc (vla-get-ActiveDocument acadObj))
  
    ;; Create the new layer
    (setq layerObj (vla-Add (vla-get-Layers doc) "LayerOn"))
    
    ;; Display the LayerOn status of the new layer
    (if (= (vla-get-LayerOn layerObj) :vlax-true)
        (alert (strcat "Layer " (vla-get-Name layerObj) " is turned on."))
        (alert (strcat "Layer " (vla-get-Name layerObj) " is turned off."))
    )

    ;; Toggle the status of the LayerOn property for the layer
    (vla-put-LayerOn layerObj (if (= (vla-get-LayerOn layerObj) :vlax-true) :vlax-false :vlax-true))
    
    ;; Display the LayerOn status of the new layer
    (if (= (vla-get-LayerOn layerObj) :vlax-true)
        (alert (strcat "Layer " (vla-get-Name layerObj) " is turned on."))
        (alert (strcat "Layer " (vla-get-Name layerObj) " is turned off."))
    )
)

路过

雷人

握手

鲜花

鸡蛋

最新评论

QQ|Archiver|CAD开发者社区 ( 苏ICP备2022047690号-1 )

GMT+8, 2024-5-19 14:58

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

返回顶部