Freeze プロパティ(ActiveX)

画層のフリーズ状態を指定します。

サポートされているプラットフォーム: Windows のみ

構文と要素

VBA:

object.Freeze
object

タイプ: Layer

このプロパティが適用されるオブジェクト。

プロパティの値

読み込み専用: いいえ

タイプ: ブール型

注意

画層をフリーズすると非表示になり、再作図や印刷の対象外となります。画層をフリーズ解除すると、元に戻ります。非表示の画層上またはフリーズされた画層上の AutoCAD サーフェスと円は非表示になりますが、それでも HIDE[隠線処理]、SHADEMODE[シェーディング モード設定]、RENDER[レンダリング]コマンドの使用時にはオブジェクトを隠します。

現在の画層をフリーズしたり、フリーズされた画層を現在の画層にすることはできません。

このプロパティは、再作図中にフリーズした画層が生成されない点で LayerOn プロパティとは異なります。

VBA:

Sub Example_Freeze()
    ' This example creates a new layer called "Freeze".
    ' It then displays the status of the Freeze property
    ' for the new layer, toggles the status of the
    ' Freeze 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 Freeze status.
    
    Dim layerObj As AcadLayer
    
    ' Create the new layer
    Set layerObj = ThisDrawing.Layers.Add("Freeze")
    
    ' Display the Freeze status of the new layer
    GoSub DISPLAYSTATUS
    
    ' Toggle the status of the Freeze property for the layer
    layerObj.Freeze = Not (layerObj.Freeze)
    
    ' Display the Freeze status of the new layer
    GoSub DISPLAYSTATUS
    Exit Sub
    
DISPLAYSTATUS:
    If layerObj.Freeze Then
        MsgBox "Layer " & layerObj.name & " is frozen.", , "Freeze Example"
    Else
        MsgBox "Layer " & layerObj.name & " is thawed.", , "Freeze Example"
    End If
    Return
        
End Sub

Visual LISP:

(vl-load-com)
(defun c:Example_Freeze()
    ;; This example creates a new layer called "Freeze".
    ;; It then displays the status of the Freeze property
    ;; for the new layer, toggles the status of the
    ;; Freeze 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 Freeze 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) "Freeze"))
    
    ;; Display the Freeze status of the new layer
    (if (= (vla-get-Freeze layerObj) :vlax-true)
        (alert (strcat "Layer " (vla-get-Name layerObj) " is frozen."))
        (alert (strcat "Layer " (vla-get-Name layerObj) " is thawed."))
    )
    
    ;; Toggle the status of the Freeze property for the layer
    (vla-put-Freeze layerObj (if (= (vla-get-Freeze layerObj) :vlax-true) :vlax-false :vlax-true))
    
    ;; Display the Freeze status of the new layer
    (if (= (vla-get-Freeze layerObj) :vlax-true)
        (alert (strcat "Layer " (vla-get-Name layerObj) " is frozen."))
        (alert (strcat "Layer " (vla-get-Name layerObj) " is thawed."))
    )
)