Vytisknout stránku | Zavřít okno

syntax v menu

Vytištěno z: CAD Fórum
Kategorie: Autodesk - stavebnictví, strojírenství, CAD/GIS
Název fóra: CAD programování
Popis fóra: Otázky programování - nadstavby a utility pro CAD a GIS aplikace Autodesk (VBA, AutoLISP, ARX/C++, .Net, JavaScript, Python, MEL...)
URL: https://www.cadforum.cz/forum/forum_posts.asp?TID=2592
Datum vytištění: 15.čer.2026 v 16:20


Téma: syntax v menu
Odeslal: Ferdinand
Předmět: syntax v menu
Datum odeslání: 19.kvě.2006 v 11:17
Se zadáváním voleb v menu nemám zkušenosti, proto bych potřeboval poradit:
Potřebuji homadně přejmenovat hladiny.
V menu spuštím příkaz _rename (^C^C_rename) a potřebuji, aby v dialogovém okně se automaticky provedlo následující:
1. v okénku Named Objects (klávesová volba je na Alt+N) zvolí Layers
2. přemístí se do části Old name (z klávesnice je to 1x Tabulátor anebo Alt+O)
3. napíše filtr /tj. prvních 6 znaků názvu hladin - jsou stejné pro všechny hladiny/ a navíc k tomu zástupní znak * /tj. hvězdička/
4. přesune se do okénka Rename To (z klávesnice je to 2x Tabulátor - prvním potvrdí výběr dle zadaného filtru, druhým přesune do okénka Rename To)
Zkoušel jsem to napsat pomocí syntax. značek ^I (pro TAB) ^L (pro SELECT), ale nešlo to - na přík. řádku mi hlásilo ...unknown command.


-------------
-FerTh-



Odpovědi:
Odeslal: Vladimír Michl
Datum odeslání: 19.kvě.2006 v 11:23

Do menu se v podstatě jen opisují znaky tak, jako byste příkaz zadával ručně na klávesnici.
Dialogové příkazy však z menu řídit nejdou (maximálně jen spustit). Zde musíte použít _-RENAME (řádkovou verzi), popř. nějaký LISP.



-------------
Vladimír Michl (moderátor)
ARKANCE CZ - https://arkance.world - arkance.world
(podpora viz emea.support.arkance.world)


Odeslal: Ferdinand
Datum odeslání: 19.kvě.2006 v 13:07
Tak bohužel v _-rename nelze použít filtraci (nelze aplikovat na více hladin naráz). V tomto případě je právě příkaz _rename součástí lispu. Jak docílit v lispu výše uvedené operace?

-------------
-FerTh-


Odeslal: Vladimír Michl
Datum odeslání: 19.kvě.2006 v 13:27
V LISPu nebudete volat _RENAME, ale použijete tabulku symbolů a v ní provedete (přes řetězcové operace) požadované přejmenování.

-------------
Vladimír Michl (moderátor)
ARKANCE CZ - https://arkance.world - arkance.world
(podpora viz emea.support.arkance.world)


Odeslal: Ferdinand
Datum odeslání: 05.čer.2006 v 15:43
Teď se dívám: neříkám to dobře. Lisp provede pouze vložení sady typových hladin s přednastavenými vlastnostmi (jsou na prvních 6-ti znacích filtrovatelné např. A1_2x-hlad1, A1_2x-hlad2 ...atd). Pak bych potřeboval přes řádek v menu automatizovat přejmenování výše popsaným postupem - aby uživateli po spuštění lispu se vybraly tyto nově vložené hladiny (filtr: v okénku je název A1_2x-*) a dostal se přímo v dial. okně do okénka Rename To.
Pane Michl, nerozumím tomu
"...použijete tabulku symbolů a v ní provedete (přes řetězcové operace) požadované přejmenování." Prosím trošku polopaticky... Děkuji.


-------------
-FerTh-


Odeslal: Vladimír Michl
Datum odeslání: 05.čer.2006 v 15:53

jinak řečeno - je potřeba to naprogramovat (bez použití příkazů AutoCADu)

zkuste se podívat na funkce (tblnext), (vl-string-subst) apod. - polopasticky to neumím, to už to raději naprogramuju (ale k tomu se dnes a zítra nedostanu)



-------------
Vladimír Michl (moderátor)
ARKANCE CZ - https://arkance.world - arkance.world
(podpora viz emea.support.arkance.world)



Vytisknout stránku | Zavřít okno