In autolisp +dcl :
(start_dialog ) ....(done_dialog 0) ,the lisp function "done_dialog" can end a modal dialog。
I wrote a dialog in Arx, it can end it in modeless by call a lisp:
//in modeless
static int ads_startDlg(){
testDlg = new Dialog(acedGetAcadFrame());
testDlg->Create(IDD_DIALOG);
testDlg->ShowWindow(SW_SHOW);
}
// close the dialog by call the lisp (enddlg)
static int ads_endDlg()
{ testDlg->DestroyWindow();}
---------------------
//in modal
static int ads_startDlg(){
testDlg = new Dialog(acedGetAcadFrame());
testDlg->Create(IDD_DIALOG);
testDlg->DoModal();
}
// ??close the dialog by call the lisp (enddlg)??
static int ads_endDlg()
{ testDlg->EndDialog(-1);}
---------------------
in the dialog,a button is set to call the lisp (enddlg)
It cant close the modal dialog, is there any way to close it through lisp。
While modal dialog not closed - your code not return control to AutoCAD. So lisp expression can not been executed.
Відповідь корисна? Клікніть на "ВПОДОБАЙКУ" цім повідомленням! | Do you find the posts helpful? "LIKE" these posts!
Находите сообщения полезными? Поставьте "НРАВИТСЯ" этим сообщениям!
На ваше запитання відповіли? Натисніть кнопку "ПРИЙНЯТИ РІШЕННЯ" | Have your question been answered successfully? Click "ACCEPT SOLUTION" button.
На ваш вопрос успешно ответили? Нажмите кнопку "УТВЕРДИТЬ РЕШЕНИЕ"
Alexander Rivilis / Александр Ривилис / Олександр Рівіліс
Programmer & Teacher & Helper / Программист - Учитель - Помощник / Програміст - вчитель - помічник
Facebook | Twitter | LinkedIn
![]() | ![]() |
Registers an external function so that the ARX library can call it directly
looked up a lot of information and wasted many hours .
@Anonymous wrote:
acedRegFunc:Registers an external function so that the ARX library can call it directly
looked up a lot of information and wasted many hours .
Sorry but I do not understand how acedRegFunc can help you.
Відповідь корисна? Клікніть на "ВПОДОБАЙКУ" цім повідомленням! | Do you find the posts helpful? "LIKE" these posts!
Находите сообщения полезными? Поставьте "НРАВИТСЯ" этим сообщениям!
На ваше запитання відповіли? Натисніть кнопку "ПРИЙНЯТИ РІШЕННЯ" | Have your question been answered successfully? Click "ACCEPT SOLUTION" button.
На ваш вопрос успешно ответили? Нажмите кнопку "УТВЕРДИТЬ РЕШЕНИЕ"
Alexander Rivilis / Александр Ривилис / Олександр Рівіліс
Programmer & Teacher & Helper / Программист - Учитель - Помощник / Програміст - вчитель - помічник
Facebook | Twitter | LinkedIn
![]() | ![]() |
If created by ARXWizards:
ACED_ADSSYMBOL_ENTRY_AUTO(CArxDiaglogApp, endDlg, true)
the 'true' mean to registered 'endDlg' as Arx function by acedRegFunc,
The function (acedInvoke ...) will be executed immediately, without waiting for the dialog box to disappear( close the dialog ),At least the test is like this.
Can't find what you're looking for? Ask the community or share your knowledge.