Forum:AutoCAD Mechanical
Thema:Makro Ansichtsfenster frieren mit Leerzeichen
Möchten Sie sich registrieren?
Wer darf antworten? Registrierte Benutzer können Beiträge verfassen.
Hinweise zur Registrierung Sie müssen registriert sein, um Beiträge oder Antworten auf Beiträge schreiben zu können.
Ihr Benutzername:
Ihr Kennwort:   Kennwort vergessen?
Anhang:    Datei(en) anhängen  <?>   Anhänge verwalten  <?>
Grafik für den Beitrag:                                                
                                                       
Ihre Antwort:

Fachbegriff
URL
Email
Fett
Kursiv
Durchgestr.
Liste
*
Bild
Zitat
Code

*HTML ist AUS
*UBB-Code ist AN
Smilies Legende
Netiquette

10 20 40

Optionen Smilies in diesem Beitrag deaktivieren.
Signatur anfügen: die Sie bei den Voreinstellungen angegeben haben.

Wenn Sie bereits registriert sind, aber Ihr Kennwort vergessen haben, klicken Sie bitte hier.

Bitte drücken Sie nicht mehrfach auf "Antwort speichern".

*Ist HTML- und/oder UBB-Code aktiviert, dann können Sie HTML und/oder UBB Code in Ihrem Beitrag verwenden.

T H E M A     A N S E H E N
cadffm

Beiträge: 20119 / 1053

System: F1
und Google

Bei dem Problem mit dem Leerzeichen bist du überhaupt noch nicht angekommen,
aber vermutlich siehst du das nicht mit Expert=0.

1. Verwende nicht Expert=0
  Das kann man, wenn man es für sinnvoll erachtet, am Ende hinzufügen wenn alles fertig ist oder halt sofort - wenn man ein Überflieger ist.
  Zum erarbeiten eines Makros, immer alle Meldungen an Menuecho, Expert usw. sonst siehst du womöglich nicht was passiert beim eintippen
  und durchgehen der Eingaben[F2]

2. Wenn du die Rückgabe nicht unterdrückst, das Makro ausführst, siehst du das Problem beim übergeben den zweiten Layernamens,
  Acad fragt dich an der Stelle überhaupt nicht nach einem Namen sondern nach einem Ansichtsfenster auf das
  es angewendet werden soll.
  Problem: Semikolon statt Komma verwendet und Semikolon ist ein ENTER (welches die Objektwahl bzw Abfrage der Layernamen beendet).

3. Leerzeichen im Makro wie CADmium schreibt, muß dem Programm mitteilen das man gerade einen Textstring übermitteln will,
  also kommt die Angabe des/der Layernamen in Anführungszeichen, dann klappts auch mit dem Leerzeichen.
   
  ^C^Caflayer;tau;*;AK;^C^Caflayer;fri;"*Layer_1*,*Layer 2*";;;


Bis hier ist deine Frage geklärt, kostenlos oben drauf kommt:
Warum brichst du den ersten aflayer Befehl ab? ^C
Wenn der Befehl abgebrochen wurde dann ist auch kein anderer aktiv, warum sendest du noch einmal "abbrechen"=ESC? ^C
Nach erfolgreichem Abbrechen wird der selbe Befehl gestartet der soeben mühsam abgebrochen wurde, gibt es da einen Sinn dahinter?

  ^C^C^Caflayer;tauen;*;aktuell;frieren;"*Layer_1*,*Layer 2*";aktuell;;

EndLevel: DIESEL IF
AFLAYER hat einen anderen Ablauf wenn man im Modellbereich ist, das Makro sollte das berücksichtigen.
Systemvariable TILEMODE und auch CVPORT kann da hilfreich sein.