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

Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > Что может быть слайдом в dcl-окнах?

Что может быть слайдом в dcl-окнах?

Ответ
Поиск в этой теме
Непрочитано 22.12.2010, 00:50
Что может быть слайдом в dcl-окнах?
Shraybicus
 
Регистрация: 05.12.2010
Сообщений: 104

Доброй ночи!

В общем вопрос в название. Что может быть в качестве слайда? Может быть например изображение в формате jpeg или bmp и др.?
Просмотров: 18157
 
Непрочитано 23.12.2010, 22:19
#41
Pastor

это только кличка
 
Регистрация: 22.10.2006
Москва
Сообщений: 252


Для того, чтобы связать lisp и WPF, надо, чтобы из лисп можно было обратиться к любому имеющемуся в окне визуальному компоненту и установить или прочитать его свойства (аналогично set_tile, get_tile и get_attr), а так же иметь возможность из lisp "прикрутить" к каждому визуальному компоненту обработчик событий (аналогично action_tile).

Цитата:
Чем вам OpenDCL не нравится?
Лично мне не нравится тем, что нужно изучать/осваивать достаточно сложную вещь, не имеющую смысла вне AutoCAD.
Иное дело, когда вы пишете диалоговые окна к AutoCAD и, при этом, параллельно изучаете HTML/CSS/JavaScript. Однажды можно будет плюнуть в автодеск и перейти в веб-программисты.
Или XAML. Хорошая основа к тому, чтобы стать .NET программистом, владеющим темой создания современного GUI.
__________________
...в шее моей жилы железные, и лоб мой - медный...

Последний раз редактировалось Pastor, 23.12.2010 в 22:40.
Pastor вне форума  
 
Непрочитано 23.12.2010, 22:29
#42
hwd

C, C++, C#
 
Регистрация: 07.10.2009
С-Пб.
Сообщений: 2,762
Отправить сообщение для hwd с помощью Skype™


Цитата:
Сообщение от Pastor Посмотреть сообщение
Для того, чтобы связать lisp и WPF, надо, чтобы из лисп можно было обратиться к любому имеющемуся в окне визуальному компоненту и установить или прочитать его свойства (аналогично set_tile, get_tile и get_attr), а так же иметь возможность из lisp "прикрутить" к каждому визуальному компоненту обработчик событий (аналогично action_tile).
Я понимаю ))) В принципе, средствами lisp получить значение свойств контрола не сложно (я даже представляю как, но для этого нужно писать .net-код и упаковывать его в lisp-оболочку, пример такой оболочки я показывал ранее). По поводу событий - вот тут не знаю, поскольку не интересовался реакторами лиспа и не представляю, насколько это развитый механизм оповещения и каковы его возможности. вообще, все эти ногой ухочесательства типа лисп + ехе, лисп + впф, мне не нравятся в свете наличия дотнета с его возможностями. лисп доска давно не развивает и откровенно говоря - забила на него. возможно, что придёт день, когда его настигнет учесть вба... Хотя мало ли, может случится чудо и в 2012-й версии юзеров ждут xaml-диалоги в лиспе + обновлённая библиотека лисповских функций + развитая система оповещений о событиях (такая как в дотнете).
__________________
Надеюсь, ты не социальный овощ? Это определяется делами! :welcome:
hwd вне форума  
 
Непрочитано 23.12.2010, 22:40
#43
ShaggyDoc

Thượng Tá Quân Đội Nhân Dân Việt Nam
 
Регистрация: 14.03.2005
44d32'44"С, 33d26'51"В
Сообщений: 13,381


Цитата:
Простой диалог пишется в течении максмимум 3 минут, если уметь, сложный - чуть дольше...
Напиши. За 3 минуты - заменитель системного YesNoCancel. За 3 месяца - показанный мной.
Цитата:
Чем вам OpenDCL не нравится?
Это сторонняя приблуда, для развода древних греков. Чтобы ей пользоваться, надо изучать эту систему - с её условностями. Гораздо больше пользы будет от изучения какой-нибудь базовой системы, на вкус от VB до .NET.

Если бы что-то подобное было встроено в IDE VL - другое дело.

Цитата:
Для того, чтобы связать lisp и WPF, надо, чтобы из лисп можно было обратиться к любому имеющемуся в окне визуальному компоненту и установить или прочитать его свойства (аналогично set_tile, get_tile и get_attr), а так же иметь возможность из lisp "прикрутить" к каждому визуальномц компоненту обработчик событий (аналогично action_tile).
Ничего этого как раз не надо. В LISP должны быть только функции - здесь сила этого языка. Вызов "формы" в LISP должен быть наподобие вызова функции alert. Она сама, где-то в своих недрах вызывает стандартный диалог. Так и любой другой диалог может сам "знать" как ему рисоваться. В LISP должен только результат возвращаться. Все, что надо знать диалогу от LISP должно передаваться аргументами функции.

Вот когда стали в ActiveX устанавливать параметры через свойства, то и потеряли преимущества LISP.
ShaggyDoc вне форума  
 
Непрочитано 23.12.2010, 22:55
#44
Pastor

это только кличка
 
Регистрация: 22.10.2006
Москва
Сообщений: 252


Цитата:
Вызов "формы" в LISP должен быть наподобие вызова функции alert. Она сама, где-то в своих недрах вызывает стандартный диалог.
Тогда средств XAML+lisp недостаточно. Требуется еще один язык, на котором будет написана логика, инкапсулированная в "форме". Я как раз и предлагал вариант, где таким языком является JavaScript (в составе разметки HTML или, если нужно, в отдельном файле).
Тогда да, взаимодействие lisp и "формы" сводится к вызову этой самой формы с одновременной передачей ей необходимых параметров, и получению результата.
__________________
...в шее моей жилы железные, и лоб мой - медный...
Pastor вне форума  
 
Непрочитано 23.12.2010, 23:01
#45
hwd

C, C++, C#
 
Регистрация: 07.10.2009
С-Пб.
Сообщений: 2,762
Отправить сообщение для hwd с помощью Skype™


Цитата:
Сообщение от ShaggyDoc Посмотреть сообщение
За 3 месяца - показанный мной.
Правильно ли я вас понял: на то, чтобы создать окно, показанное вами в #23, с построением древовидной структуры, которую вы читали из xml-файлов, и на то, чтобы прописать обработчики кликов для кнопок и вызовов лисповских функций (без написания самих функций, вычерчивающий нужные объекты по выбранным в окне параметрам), у вас ушло 3 месяца?
Цитата:
Сообщение от Pastor
Тогда средств XAML+lisp недостаточно. Требуется еще один язык, на котором будет написана логика, инкапсулированная в "форме". . Я как раз и предлагал вариант, где таким языком является JavaScript (в составе разметки HTML или, если нужно, в отдельном файле).
Этот язык уже есть - дотнет, а если ещё точнее - технология wpf. Зачем велосипед изобретать?
__________________
Надеюсь, ты не социальный овощ? Это определяется делами! :welcome:
hwd вне форума  
 
Непрочитано 23.12.2010, 23:10
#46
Pastor

это только кличка
 
Регистрация: 22.10.2006
Москва
Сообщений: 252


Язык JavaScript тоже "уже есть" и технология HTML/CSS в придачу. И родились они раньше .NET и на них держится весь интернет.
У простых парней, пишущих на lisp, есть проблема, как выскочить за рамки убогого DCL, при этом не переходя в категорию .NET программистов. Ежу понятно, что если вы умеете писать .NET программы под AutoCAD, то вся эта тема вам абсолютно неинтересна.

p.s.
Я выбираю связку HTML/CSS/JavaScript + специализированный браузер, потому что она позволяет получить не просто банальный заменитель DCL, а нечто больше, поскольку является базовой интернет-технологией...
__________________
...в шее моей жилы железные, и лоб мой - медный...

Последний раз редактировалось Pastor, 23.12.2010 в 23:39.
Pastor вне форума  
 
Непрочитано 23.12.2010, 23:38
#47
Кулик Алексей aka kpblc
Moderator

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


Цитата:
Сообщение от ShaggyDoc Посмотреть сообщение
Все это опубликовано с исходниками в книге "САПР на базе AutoCAD - как это делается" (глава 16).
Вот только одна проблема - ее не купить. А как хотелось бы получить второй экземпляр (про второе издание молчу)!
Цитата:
Сообщение от gomer Посмотреть сообщение
Чем вам OpenDCL не нравится?
Стороннее приложение, поддержка которого может прекратиться в любой момент. Достаточно вспомнить историю autoСПДС...
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 24.12.2010, 07:00
#48
ShaggyDoc

Thượng Tá Quân Đội Nhân Dân Việt Nam
 
Регистрация: 14.03.2005
44d32'44"С, 33d26'51"В
Сообщений: 13,381


Цитата:
Тогда средств XAML+lisp недостаточно. Требуется еще один язык, на котором будет написана логика, инкапсулированная в "форме".
Так это "язык-посредник" уже имеется в AutoCAD. Мы же говорим про диалект встроенный в AutoCAD.

Когда мы вызываем, например, функцию (alert "Hello World") из LISP, то она передается в недра AutoCAD, а там, внутри, вызывается функция WinAPI MessageBox. Она и работает (рисует окно, выводит сообщение, обрабатывает кнопки). Для меня такой вариант недостаточен, хотя бы потому, что нельзя передать заголовок. Поэтому делаю свою низкоуровневую функцию, которая передает больше параметров в тот же MessageBox. А для более удобного использования делаю еще функции высокого уровня
(ru-dlg-yes-no-cancel "Казнить нельзя помиловать")
(ru-yes "Понял, да")
(ru-no "Будем форматировать диск C:")
(ru-msg-alert "Ой, блин")
(ru-msg-info "Приехали")
и т.п. В этих диалогах есть и заголовки, и иконки, и требуемые кнопки (какая надо - по умолчанию), и спрятана вся логика работы.

В случае с XAML таким посредником мог бы быть .NET внутри AutoCAD, а может и более низкоуровневый код. Это уже технические детали.

Цитата:
Язык JavaScript тоже "уже есть" и технология HTML/CSS в придачу
Ну так это для других целей. HTML выводит форматированный текст, CSS определяет его внешний вид, Javascript, по сути, тоже в итоге что-то выводит (не всегда в виде HTML), работая на стороне пользователя. А PHP, например, может сделать гораздо больше, но работает на стороне сервера. Посмотрите код страницы, который выдается в браузер в результате, какую-нибудь "карту сайта". Или код, который выводится в окне "прикрепить файл" на этом форуме. Там 90% ненужного для логики работы диалогового окна.

Вот если бы делать программу, которая работала бы на сервере, а клиенты заходили через интернет, тогда возможно. Тут тоже есть два принципиальных варианта: клиент-браузер и специализированный клиент. Для неопределенного круга лиц конечно лучше браузер. А для ограниченного - специальный клиент, который раздается "кому положено".

Цитата:
Правильно ли я вас понял: на то, чтобы создать окно, показанное вами в #23, с построением древовидной структуры, которую вы читали из xml-файлов, и на то, чтобы прописать обработчики кликов для кнопок и вызовов лисповских функций (без написания самих функций, вычерчивающий нужные объекты по выбранным в окне параметрам), у вас ушло 3 месяца?
Три месяца я предложил для контраста с "тремя минутами". Пусть в DCL попробуют. Или в ObjectDCL.

Сконструировать само окно (раскидать компоненты) - полчаса. Доводка до скомпилированного вида - полдня. А вот дальнейшие усовершенствования, время от времени, могут тянуться бесконечно. Но это с любой программой. Вот, например, получение вырезок с экрана и запись картинок в файл сама по себе занимательная задача.

Вот еще пример простенького диалога - редактор полилинии. Там есть сетка со списком координат и изображение полилинии. Очень удобно при вводе из какой-то ведомости с обзором всего объекта разом. В AutoCAD полилинию не всегда в целом и увидишь, а тут любые ошибки можно увидеть. Предлагаю желающим потренироваться описать такое окно на DCL - там нет "каких-то эдаких" контролов.

Цитата:
Вот только одна проблема - ее не купить
Тут ничем не могу помочь. Я её не могу распространять (договор), хотя мне не жалко.

Цитата:
про второе издание молчу
Второе издание не имеет смысла, может быть только допечатка. А вот вторая часть, полностью про программирование для 3D моделирования, возможно появится. Процентов на 80 написаны еще три книги, но времени нет. Вот сниму погоны, тогда....
Миниатюры
Нажмите на изображение для увеличения
Название: dlg_pline_edit.jpg
Просмотров: 98
Размер:	41.1 Кб
ID:	50568  
ShaggyDoc вне форума  
 
Непрочитано 24.12.2010, 07:52
#49
hwd

C, C++, C#
 
Регистрация: 07.10.2009
С-Пб.
Сообщений: 2,762
Отправить сообщение для hwd с помощью Skype™


Цитата:
Сообщение от Pastor Посмотреть сообщение
У простых парней, пишущих на lisp, есть проблема, как выскочить за рамки убогого DCL, при этом не переходя в категорию .NET программистов.
...
p.s.
Я выбираю связку HTML/CSS/JavaScript + специализированный браузер, потому что она позволяет получить не просто банальный заменитель DCL, а нечто больше, поскольку является базовой интернет-технологией...
Т.е. по вашему, "простым парням" легче будет освоить HTML/CSS/JavaScript + написать "специализированный браузер"(с), чем освоить некоторую часть дотнета? Вопрос риторический... Ладно, всё равно это спор ни о чём - не будет автокад использовать вместо dcl ни html, ни xaml.
Цитата:
Сообщение от ShaggyDoc
Вот, например, получение вырезок с экрана и запись картинок в файл сама по себе занимательная задача.
Помнится, возился когда-то с этим... Вот выкладывал ранее (если кому будет интересно):
Видео:
http://www.youtube.com/watch?v=f7KAsbYW1Ec
Как это делается в AutoCAD - здесь.
Статья по теме видео.

Цитата:
Сообщение от Кулик Алексей aka kpblc
Вот только одна проблема - ее не купить
А если через интернет? Я заказал весной - мне на след. день привезли (т.е. не мне лично, а нашей компании).
Цитата:
Сообщение от ShaggyDoc
А вот вторая часть, полностью про программирование для 3D моделирования, возможно появится. Процентов на 80 написаны еще три книги, но времени нет.
На какую версию AutoCAD ориентирован материал? Я понимаю, что лисп будет работать почти в любой версии, но, к примеру, в "Сапр на базе Автокад" то, что приложено на диске, под автокад 2009 не запустилось - например, тот же стартер не работал и т.п. (оно и понятно, поскольку то, что было написано на делфях, ориентировалось на более старую версию автокада).
__________________
Надеюсь, ты не социальный овощ? Это определяется делами! :welcome:
hwd вне форума  
 
Непрочитано 24.12.2010, 08:36
#50
Profan


 
Регистрация: 25.12.2005
Москва
Сообщений: 13,627


В любом случае, gomer, ты наврал про 3 минуты.
Profan вне форума  
 
Непрочитано 24.12.2010, 09:59
#51
Pastor

это только кличка
 
Регистрация: 22.10.2006
Москва
Сообщений: 252


Цитата:
Т.е. по вашему, "простым парням" легче будет освоить HTML/CSS/JavaScript + написать "специализированный браузер"(с), чем освоить некоторую часть дотнета?
Специализированный браузер напишет добрый дядя. Это должно быть универсальное приложение к AutoCAD, способное открывать любые веб-страницы и взаимодействовать с теми из них, которые этого хотят.
Изучать HTML/CSS/JavaScript может даже сложнее, чем скажем Windows Forms. Но здесь появляется возможность выйти за рамки настольных приложений к AutoCAD и заодно стать веб-программистом
Кстати, сам автодеск что-то нутром почуял и потому в последних версиях появилась взможность через ActiveX (объект Utility) вызывать некий спецбраузер (который, правда, с лиспом взаимодействовать не умеет) и даже появилась возможность скачивать файлы. Реализовано все это предельно коряво и потому, видимо, прошло незамеченным.
__________________
...в шее моей жилы железные, и лоб мой - медный...

Последний раз редактировалось Pastor, 24.12.2010 в 10:06.
Pastor вне форума  
 
Непрочитано 24.12.2010, 10:00
#52
ShaggyDoc

Thượng Tá Quân Đội Nhân Dân Việt Nam
 
Регистрация: 14.03.2005
44d32'44"С, 33d26'51"В
Сообщений: 13,381


Цитата:
На какую версию AutoCAD ориентирован материал?
3D - на версию 2008 и старше, т.е. когда подключились требуемые возможности. Связано еще и с аннотативностью, т.к. модель сделать мало, надо еще и четежи по модели оформить.

Цитата:
не будет автокад использовать вместо dcl ни html, ни xaml.
Ясен пень, не будет. Им слабо и для .NET сделать возможность экспортирования в LISP функций, как это сделано с ObjectARX. Хотя тут я могу ошибаться, может не слабо, а просто не хотят.
ShaggyDoc вне форума  
 
Непрочитано 24.12.2010, 10:32
#53
hwd

C, C++, C#
 
Регистрация: 07.10.2009
С-Пб.
Сообщений: 2,762
Отправить сообщение для hwd с помощью Skype™


Цитата:
Сообщение от Pastor Посмотреть сообщение
Но здесь появляется возможность выйти за рамки настольных приложений к AutoCAD и заодно стать веб-программистом
Фига се... круто... Ну да, дотнет это конечно-же предоставить не сможет, куда уж ему... Сдаюсь.
__________________
Надеюсь, ты не социальный овощ? Это определяется делами! :welcome:
hwd вне форума  
 
Непрочитано 24.12.2010, 10:41
#54
zamtmn

КИПиА
 
Регистрация: 21.03.2005
Tyumen
Сообщений: 1,352
<phrase 1=


Offtop:
hwd
Количество упоминаний о .нет и связанных технологиях в Ваших постах напоминает серенькую часть #36
zamtmn вне форума  
 
Непрочитано 24.12.2010, 10:43
#55
hwd

C, C++, C#
 
Регистрация: 07.10.2009
С-Пб.
Сообщений: 2,762
Отправить сообщение для hwd с помощью Skype™


Цитата:
Сообщение от zamtmn Посмотреть сообщение
Offtop:
hwd
Количество упоминаний о .нет и связанных технологиях в Ваших постах напоминает серенькую часть #36
Тогда что Вам напоминает количество упоминаний о Lisp? Их намного больше. На чём пишу, то и использую в своих постах. И этим я ничем не отличаюсь от лисперов, делфийцев и т.п. Думаю, что вам лучше не развивать эту тему.
__________________
Надеюсь, ты не социальный овощ? Это определяется делами! :welcome:
hwd вне форума  
 
Непрочитано 24.12.2010, 10:44
#56
Лиспер


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


ShaggyDoc, в .NET SDK начиная с версии 2007 вроде бы появилась возможность писать lisp-функции на .NET. Могу ошибаться
__________________
(/= RegDate StartReadDate)
Лиспер вне форума  
 
Непрочитано 24.12.2010, 10:47
#57
hwd

C, C++, C#
 
Регистрация: 07.10.2009
С-Пб.
Сообщений: 2,762
Отправить сообщение для hwd с помощью Skype™


Цитата:
Сообщение от Лиспер Посмотреть сообщение
ShaggyDoc
вроде бы появилась возможность писать lisp-функции на .NET. Могу ошибаться
Не ошибаешься.
__________________
Надеюсь, ты не социальный овощ? Это определяется делами! :welcome:

Последний раз редактировалось hwd, 24.12.2010 в 10:52.
hwd вне форума  
 
Непрочитано 24.12.2010, 11:57
#58
Pastor

это только кличка
 
Регистрация: 22.10.2006
Москва
Сообщений: 252


Цитата:
Ну да, дотнет это конечно-же предоставить не сможет,
Конечно же сможет. Именно на нем и стоит писать тот самый спец браузер.
Браузером можно будет пользоваться из прикладных программ, написанных на lisp, ObjectARX и ObjectARX.NET.
__________________
...в шее моей жилы железные, и лоб мой - медный...

Последний раз редактировалось Pastor, 24.12.2010 в 12:05.
Pastor вне форума  
 
Непрочитано 24.12.2010, 12:09
#59
hwd

C, C++, C#
 
Регистрация: 07.10.2009
С-Пб.
Сообщений: 2,762
Отправить сообщение для hwd с помощью Skype™


Цитата:
Сообщение от Pastor Посмотреть сообщение
Конечно же сможет. Именно на нем и стоит писать тот самый спец браузер.
Глупо писать велосипед браузер, если уже имеется XAML, и механизм работы с ним. То, что кто-то не умеет работать с XAML, но умеет работать с HTML/CSS/JavaScript - это его личные проблемы, а не проблемы Майкрософта. Мелкомягкие со своей стороны предоставили хорошую технологию, решающую задачу отделения GUI от кода и построения его на основе разметки.
Кому нужно - тот освоит технологию.
Кому лень - будет сидеть у разбитого корыта и ждать, что с неба упадёт "браузер" что-то написанное специально под его уровень знаний. имхо.
__________________
Надеюсь, ты не социальный овощ? Это определяется делами! :welcome:
hwd вне форума  
 
Непрочитано 24.12.2010, 12:25
#60
Pastor

это только кличка
 
Регистрация: 22.10.2006
Москва
Сообщений: 252


Браузер уже написан - Internet Explorer. Его просто нужно обернуть в удобоваримую форму.

Мы спорим непонятно о чем.
Напишите приложение, которое будет использовать разметку XAML и строить на её основе диалоги для AutoCAD. Приложение должно экспортировать в AutoCAD комплект функций, позволяющих из lisp (или ObjectARX) строить и обслуживать диалоги на основе файлов с разметкой XAML. Вам будет слава, автодеску -позор.
А я потихонечку продолжу писать свой браузер, который, уверен, тоже будет востребован.
__________________
...в шее моей жилы железные, и лоб мой - медный...

Последний раз редактировалось Pastor, 24.12.2010 в 12:46.
Pastor вне форума  
Ответ
Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > Что может быть слайдом в dcl-окнах?

Размещение рекламы
Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Мониторы LCD CRT Разное 94 17.06.2008 10:51
Быть может куда-то надо ввести какой-то коэффициент? psik AutoCAD 1 16.01.2007 02:32
Высокий простенок (а может быть столб) Koker Прочее. Архитектура и строительство 7 16.10.2006 14:46
Может разорвать анкерные болты от мороза? Колян Прочее. Архитектура и строительство 4 12.08.2005 09:14
eTransmit вырубается! В чем может быть дело? Maps AutoCAD 2 22.01.2004 17:12