Создание DCL - Страница 3
| Правила | Регистрация | Пользователи | Сообщения за день |  Справка по форуму | Файлообменник |

Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > Создание DCL

Создание DCL

Ответ
Поиск в этой теме
Непрочитано 07.07.2010, 14:08
Создание DCL
Zaghim
 
Регистрация: 01.07.2010
Сообщений: 521

Поискал на форуме, точного ничего не нашел.
Подскажите чайнику, как нужно создавать DCL и как его потом запустить (это самое важное). Ничего не пойму...везде сразу коды коды...а как и куда ничего нету...Что еще важней, как все запустить, если создавать окно в ObjectDCL.
Хотелось бы сделать окошко в котором был бы комбо бокс...в нем выбрав нужную деталь показывались бы 4 картинки с различными ее видами...к каждой картинке был бы прикреплен файл... и ткнув на картинку я мог бы вставить это в чертеж. Такое реально сделать?
Просмотров: 11396
 
Непрочитано 25.10.2010, 19:02
#41
Владимир Егорьев


 
Сообщений: n/a


E-degtyarev&Do$

Да какието радужные оболочки.
 
 
Непрочитано 04.12.2010, 22:22
#42
Владимир Егорьев


 
Сообщений: n/a


Здравствуйте.

Такой вопрос.Как осуществляется прикрепление некотрой созданной LISP программы к кнопке диалогового окна.Где можно про это почитать?
 
 
Непрочитано 04.12.2010, 22:45
#43
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,406


Через action_tile
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 04.12.2010, 22:46
#44
Владимир Егорьев


 
Сообщений: n/a


Ок.Спасибо.Учимся дальше.
 
 
Автор темы   Непрочитано 06.12.2010, 09:39
#45
Zaghim


 
Регистрация: 01.07.2010
Сообщений: 521


Полещук рулит)))
Zaghim вне форума  
 
Непрочитано 08.04.2011, 21:54
#46
Владимир Егорьев


 
Сообщений: n/a


Как выполнить закрытие д.окна с помощью "крестика" (в правом верхнем углу д.окна)?
 
 
Непрочитано 08.04.2011, 22:08
#47
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,406


Ну, либо на него нажать, либо на кнопку [OK]. На крайний случай - (done_dialog).
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 08.04.2011, 22:23
#48
Владимир Егорьев


 
Сообщений: n/a


Кулик Алексей aka kpblc

Так в томто и дело что крестик не работает.ОК выводит из окна.А вот как крестик активировать?

Добавлено.

А справка по Лиспу только на английском?
 
 
Непрочитано 08.04.2011, 22:29
#49
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,406


Владимир Егорьев, покажи полный код - и dcl, и lsp для его активизации.
P.S. На данный момент справка по AutoLISP либо на английском, либо в печатном (ищи книги Полещука; но учиться по ним тяжело).
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 08.04.2011, 22:38
#50
Владимир Егорьев


 
Сообщений: n/a


Две книги у меня Полищука.

Код:
[Выделить все]
np_forma_c: dialog {label="Ведомость ";
:row{label="Форма ведомости";
  :column{label="Нлмер позиции";
    :edit_box{key="kShir1";value="0";edit_width=3;}
  }//column
:spacer {height=1;}
  :column{label="Наименование";
    :edit_box{key="kShir2";value="0";edit_width=3;}
  }//column
:spacer {height=1;}
  :column{label="Шифр марки";
    :edit_box{key="kShir3";value="0";edit_width=3;}
  }//column
:spacer {height=1;}
  :column{label="Номер чертежа";
    :edit_box{key="kShir4";value="0";edit_width=3;}
  }//column
}//row
ok_button;
}//конец forma_c
Код:
[Выделить все]
(defun c:show_forma_c ( / dcl_id)
  (if (< (setq dcl_id (load_dialog "forma_c.DCL")) 1) (exit))
  (if (not (new_dialog "np_forma_c" dcl_id)) (exit))
  (start_dialog)
  (unload_dialog dcl_id)
  (princ)
);defun show_forma_c
 
 
Непрочитано 09.04.2011, 00:04
#51
gomer

строю, ломаю
 
Регистрация: 03.04.2008
Украина
Сообщений: 5,515


ok_only;
gomer вне форума  
 
Непрочитано 09.04.2011, 00:19
#52
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,406


Уже нет сил на полноценную проверку, но, ИМХО: а где (action_tile) ?
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 09.04.2011, 11:05
#53
Владимир Егорьев


 
Сообщений: n/a


gomer

У Полещука: ok_only-элемент в виде колонки из одного элемента с кнопкой OK

Кулик Алексей aka kpblc

Если ты к тому что у меня в принципи нет action_tile-то я просто пока до этого не дошёл.Я просто пока построил диалоговое окно без действий.Если ты про то что использовать action_tile в качестве воздействия на крестик-то я не знаю как это выполнить.Как я понимаю происходящее-то крестик это атрибут самого окна по умолчанию,и чтобы на этот крестик воздействовать должна быть команда,но я её не нашёл у Полещука. (Поправь если я заблуждаюсь)
 
 
Непрочитано 09.04.2011, 12:06
1 | #54
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,406


Владимир Егорьев, у тебя не прописано действие Cancel. Попробуй такой код:
Код:
[Выделить все]
 (defun show-form (/ file handle dcl_id dcl_res)
  (setq file   (strcat (vl-string-right-trim "\\" (getenv "TMP"))
                       "\\dlg.dcl"
                       ) ;_ end of strcat
        handle (open file "w")
        ) ;_ end of setq
  (foreach item '("np_forma_c: dialog {label=\"Âåäîìîñòü \";"
                  ":row{label=\"Ôîðìà âåäîìîñòè\";"
                  ":column{label=\"Íëìåð ïîçèöèè\";"
                  ":edit_box{key=\"kShir1\";value=\"0\";edit_width=3;}"
                  "}//column"
                  ":spacer {height=1;}"
                  ":column{label=\"Íàèìåíîâàíèå\";"
                  ":edit_box{key=\"kShir2\";value=\"0\";edit_width=3;}"
                  "}//column"
                  ":spacer {height=1;}"
                  ":column{label=\"Øèôð ìàðêè\";"
                  ":edit_box{key=\"kShir3\";value=\"0\";edit_width=3;}"
                  "}//column"
                  ":spacer {height=1;}"
                  ":column{label=\"Íîìåð ÷åðòåæà\";"
                  ":edit_box{key=\"kShir4\";value=\"0\";edit_width=3;}"
                  "}//column"
                  "}//row"
                  "ok_cancel;}"
                  )
    (write-line item handle)
    ) ;_ end of foreach
  (close handle)
  (setq dcl_id (load_dialog file))
  (new_dialog "np_forma_c" dcl_id)
  (action_tile "accept" "(done_dialog 1)")
  (action_tile "cancel" "(done_dialog 0)")
  (setq dcl_res (start_dialog))
  (unload_dialog dcl_id)
  (princ)
  ) ;_ end of defun
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 09.04.2011, 12:12
#55
gomer

строю, ломаю
 
Регистрация: 03.04.2008
Украина
Сообщений: 5,515


Цитата:
Сообщение от Владимир Егорьев Посмотреть сообщение
У Полещука
Алгоритм такой:
1. Меняешь ok_button; на ok_only (смотришь нажимается ли крестик)
2 Заменяешь (start_dialog) на (setq dcl_rt (start_dialog)) (смотришь что возвращает dcl_rt
3. Вместо ok_only используешь ok_cancel (жмешь все кнопки и крестик, смотришь переменную dcl_rt)

ой, kpblc меня опередил =)

Последний раз редактировалось gomer, 09.04.2011 в 12:19.
gomer вне форума  
Ответ
Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > Создание DCL



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Ламерские вопросы по LISP и DCL TheBuTeK LISP 7 03.07.2016 22:15
Создание диалоговых окон в AutoCAD TwoZero Программирование 145 11.03.2015 18:15
DCL & UserForm VBA Holon Программирование 21 05.10.2007 01:37
Создание help'а к своим прогам Apelsinov Программирование 20 27.07.2006 12:51
Одна из целей: Создание экспертных систем на базе AutoCAD. Сергей Юрьевич Программирование 9 01.01.2005 15:17