Guten Morgen!
In der Suche hab ich leider nichts passendes gefunden deshalb wende ich ich wieder an Euch.
Hab folgenden Ablauf zu lösen:
Beim Doppelklick auf einen Block mit Attributen soll das Lisp "Infolay" gestartet werden. Dieses Lisp entsperrt mir den Layer "Infolayer" und nach öffnen der Eigenschaftspalette soll das Lisp warten bis ich die Palette händisch wieder schließe. Danach soll der Layer wieder gesperrt werden.
Layer entsperren-->Eigenschaftspalette öffnen --> warten bis Benutzereingaben fertig und die Palette geschlossen wird --> Layer sperren.
Der Block enthält Attribute die mit Schriftfeldern verknüpft sind und darf nicht gelöscht werden. Deshalb befindet er sich auf einem gesperrten Layer. Weiters müssen die Attribute aber editierbar sein.
Die Eigenschaftspalette ist deshalb dafür gut geeignet da man die Palette in die Breite ziehen kann und deshalb die Eingaben (ganze Sätze) in der vollen Länge sehen kann. Das Dialogfeld der Schnelleigenschaften kann man in der Breite ja nicht verändern und ist deshalb für mich nicht brauchbar!)
Sicherlich kann man all das auch in Einzelschritten erledigen, aber das sperren des Layers wird dann doch häufig vergessen und schon passiert es bei der nachfolgenden Bearbeitung das der Block versehentlich gelöscht wird und alle Schriftfelder "ohne Hose" äh Bezug "####" dastehen.
Nun soweit bin ich gekommen:
Den Doppelklick stell ich in der CUI ein -->kein Problem!
Das Lisp wartet aber nicht und läuft bis zum Ende durch!
(defun c:infolay ( /)
(command "-layer" "en" "infolayer" "" "" )
(command "_.properties")
(while (/=(getvar "CMDACTIVE")0)(command pause))
(command "-layer" "sp" "infolayer" "" "" )
)
Bitte um Hilfe!
Danke!
lg
Martin
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP