Диалогты басқару тілі - Dialog Control Language

Диалогты басқару тілі (DCL) - жоғары деңгейлі сипаттама тілі және ішіндегі аудармашы AutoCAD қарапайым графикалық диалогтар құруға арналған. AutoLISP кеңейтімдер оны AutoCAD ортасында пайдаланушымен өзара әрекеттесу үшін қолданады.

Ерекшеліктері және қолданылуы

Басқа GUI интерфейстерінен айырмашылығы, DCL толық емес GUI қолданбалы бағдарламалауға арналған құралдар жиынтығы. Ол тек AutoCAD ішінде қарапайым диалогтарды қамтамасыз етуге арналған. Оған мәтін ұяшықтары, батырмалар, құсбелгі және тізім ұяшықтары сияқты негізгі форма виджеттері кіреді. DCL болып табылады объектіге бағытталған; бұл мұрагерлік пен композиция арқылы қайта пайдалануға мүмкіндік береді.

DCL синтаксисі «тақтайшаларды» анықтауға және қолдануға негізделген. 'Плитка' мәтін ұясы немесе мәтін белгісі сияқты GUI виджетін білдіреді. Плиткалар сонымен қатар басқа виджеттерді ұстайтын виджеттерді ұсынады, мысалы, бағандар, радио батырмалар топтары және диалог терезелері. DCL барлық негізгі виджеттер үшін кіріктірілген плиткаларды ұсынады, және жаңа тақтайшалар арқылы анықтауға болады мұрагерлік және құрамы басқа тақтайшалар

DCL жұмыс уақытында Lisp коды бойынша диалогпен өзара әрекеттесуге мүмкіндік береді. Белгілі бір виджеттерде олармен байланысты әрекеттер болуы мүмкін AutoLISP іске қосылатын функция және оған берілетін мәндер. GUI интерфейсінің басқа түрлерінен айырмашылығы, DCL диалог терезелерін жұмыс уақытында айтарлықтай өзгерту мүмкін емес. Мәтін ұяшықтары мен тізім ұяшықтары сияқты кейбір виджеттердің мазмұнын өзгертуге болады, бірақ виджеттерді диалог терезесінен алып тастау немесе қосу мүмкін емес.

Мысал

Мұнда DCL файлының мысалы келтірілген (және оған қоса) AutoLISP DCL негізгі ерекшеліктерін көрсететін файл).

name_button: батырма {
 label = «Атын жіберу»;
 әрекет = «(аты-жөні)»;
}

сәлем: диалог {
 label = «DCL мысалы»;
 
 : edit_box {
 label = «Аты:»;
 key = «name»;
 }

 : name_button {
 key = «submit-name»;
 }

 : мәтін {
 key = «құттықтау»;
 }

 тек қана;
}

Тілқатысу терезесі кірістірілген 'диалог' мұрагері арқылы жасалады. Сипаттар тілқатысу терезесінде және басқа виджеттерде ат / мән жұптарында орнатылады. Плиткаларды диалогтың ішіне жай ғана ат қою арқылы немесе оларды атап, қосымша қасиеттерді көрсету арқылы орналастыруға болады. Жаңа тақтайша ('name_button') оны пайдалану және оның қасиеттерін көрсету арқылы пайдалануға арналған.

; DCL «hello.dcl» ретінде сақталады
(бас тарту өзгерту аты ()
  (жиынтық «сәлемдесу» (strcat «Сәлеметсіз бе, » (плитка «аты») "!")))

(setq сәлем-DC (load_dialog «hello.dcl»))
(жаңа_диалог «Сәлеметсіз бе» сәлем-DC)
(диалогты бастау)
(түсіру_диалогы сәлем-DC)

AutoLisp файлындағы бірқатар функцияларды шақыру арқылы DCL диалогы құрылады. Плиткалар қайта қоңырау шала алады AutoLISP белгілі бір оқиғаларға арналған код, ал Lisp диалог жұмыс істеп тұрған кезде плиткалардың мазмұнын басқара алады.

Баламалы технологиялар

АЖЖ шеңберінде жалпы GUI-ді және басқа кеңейтімдерді құру үшін AutoDesk тағы бірнеше таңдау ұсынады. The ObjectARX Арналған API C ++ кеңейтімдерді Microsoft Visual Studio ішіндегідей құруға мүмкіндік береді. VBA апарып тастау бағдарламалауға мүмкіндік береді AutoCAD болсақ Microsoft Office және басқа қосымшалар.

AutoCAD 2007 және одан кейінгі нұсқаларына сәйкес AutoLISP немесе Visual-LISP бағдарламалары Visual Studio .NET (VB немесе C #) тілінде жазылған процедураларды шақыра алады. Енді бағдарламашылар VB немесе C # тілінде диалогтар құра алады, олар .NET Forms API-де басқарудың барлық спектріне ие және оларды Visual-LISP-тен шақыруға болады.

Сыртқы сілтемелер