Přizpůsobení aplikace AutoCAD pomocí rozhraní ActiveX Automation

ActiveX Automation je technologie vyvinutá společností Microsoft®, která vychází z architektury modelu COM (Component Object Model). Je možné ji použít k přizpůsobení aplikace AutoCAD, sdílení výkresových dat s jinými aplikacemi a k automatizaci úkolů.

Objekty výkresu můžete vytvářet a manipulovat s nimi v libovolné aplikaci, která slouží jako řadič pro automatizaci. Nástroj Automation umožňuje vývoj maker mezi různými aplikacemi, což je schopnost, která není u jazyka AutoLISP dostupná.

Poznámka: Technologie ActiveX není podporována v systému Mac OS.

Implementace rozhraní ActiveX přináší pro aplikaci dvě výhody:

Například můžete chtít zobrazit výzvu pro zadání dat, nastavit předvolby, vytvořit výběrovou množinu nebo načíst data výkresu. V závislosti na typu operace se můžete rozhodnout, který nástroj Automation použijete.

Zobrazené objekty se nazývají objekty Automation. Objekty Automation zpřístupňují metody, vlastnosti a události. Metody jsou funkce, které provádějí operace na objektech. Vlastnosti jsou funkce, které nastavují nebo vracejí informace o stavu objektu. Události jsou uživatelem vyvolané akce, na které musí program reagovat.

Obecně může k objektům Automation poskytovaným aplikací AutoCAD přistupovat libovolný typ aplikace. Může se jednat o samostatný program, knihovnu DLL (Dynamic Linked Library) nebo makro v rámci aplikace, například Word nebo Excel. Nejčastěji se bude pravděpodobně jednat o samostatný spustitelný soubor. Pokud používáte aplikace od vývojářů třetích stran, postupujte podle jejich pokynů k instalaci a používání jejich produktů.

Definice externího příkazu a jeho použití ke spuštění aplikace

Pomocí souboru acad.pgp můžete definovat příkaz, kterým se spustí externí příkaz sloužící ke spuštění samostatné aplikace (podobně jako v případě zkratky příkazu, kterou lze použít ke spuštění příkazu).

Následující příklad definuje příkaz RUNAPP1, který spouští soubor app1.exe v adresáři c:\vbapps\. (Přidejte tento kód do oddílu externích příkazů souboru acad.pgp.)

RUNAPP1, start c:\vbapps\app1, 0

Pokud vaše aplikace požaduje zadání parametrů, měli byste použít následující syntaxi:

RUNAPP2, start c:\vbapps\app2, 0, *Parameters: ,

Tento příklad definuje příkaz RUNAPP2, který vás vyzve, abyste zadali parametry, které poté předá aplikaci.

Pro spuštění aplikace také můžete použít funkci jazyka AutoLISP startapp , která využívá nástroj Automation. Jakmile jazyk AutoLISP spustí externí aplikaci, nebude již mít možnost ovládat její akce. Je možné však použít jazyk AutoLISP ke spouštění různých aplikací na základě určitých parametrů.

Spuštění aplikace z uživatelského rozhraní

Po definování externího příkazu sloužícího ke spuštění samostatné aplikace můžete tento příkaz použít jako součást makra příkazů v prvku uživatelského rozhraní.

Pokud používáte pouze jednu nebo dvě aplikace, můžete je přidat na jeden ze standardních panelů pásu karet nebo na panel nástrojů Rychlý přístup. Pokud používáte skupinu aplikací, můžete definovat vlastní panely pásu karet, které budou speciálně vyhrazeny pro tyto aplikace.