|
||
| Правила | Регистрация | Пользователи | Сообщения за день | | Поиск | | Справка по форуму | Файлообменник | |
|
![]() |
Поиск в этой теме |
![]() |
#1 | |
.NET 4.5. Баг с .MdiDocumentManager.ActiveDocument (Автокад 2015-17)
новичок
Ярославль
Регистрация: 19.06.2005
Сообщений: 3,396
|
||
Просмотров: 13102
|
|
||||
новичок Регистрация: 19.06.2005
Ярославль
Сообщений: 3,396
|
готовый проект https://yadi.sk/d/oWzio45REXcl3A
Последний раз редактировалось p_sh, 19.12.2018 в 20:57. |
|||
![]() |
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,450
|
VBA под ACAD не устанавливал, не устанавливаю и устанавливать не собираюсь. В остальном - почему не используется вариант Bundle-пакетов?
И, кстати, 700 kb прекрасно прикрепляются к посту.
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
![]() |
|
||||
новичок Регистрация: 19.06.2005
Ярославль
Сообщений: 3,396
|
Цитата:
Я решил, что пользователь может вставить привычные себе кнопки . И, потом я понятия не имел: что такое эти пакеты, и как их использовать пока не знаю. C vba история такая, что для непрофессионала, занимающегося программированием по случаю, позволяет что-то реализовать довольно просто. (плюсы есть) Последний раз редактировалось p_sh, 19.12.2018 в 18:46. |
|||
![]() |
|
||||
Регистрация: 10.08.2013
Сообщений: 11,499
|
Цитата:
|
|||
![]() |
|
||||
Регистрация: 18.12.2010
Сообщений: 5,114
|
Цитата:
Я вставлял код из GW BASIC в VBA - и он там работал! с минимум изменений, а один кусок я там потом оставил вообще без изменений |
|||
![]() |
|
||||
Регистрация: 10.08.2013
Сообщений: 11,499
|
это Interop потому что. Там да - очень большая похожесть на код VBA акада при использовании VB.Net, ну а минус - небольшая скорость работы с объектами чертежа.
----- добавлено через ~5 мин. ----- Это логично - что базовый синтаксис VB.Net похож на VB/VBA, а синтаксис C# - на С/С++. Было бы удивительно - если бы вообще все новое придумали бы) |
|||
![]() |
|
||||
Регистрация: 18.12.2010
Сообщений: 5,114
|
Цитата:
Последний раз редактировалось trir, 20.12.2018 в 08:01. |
|||
![]() |
|
||||
новичок Регистрация: 19.06.2005
Ярославль
Сообщений: 3,396
|
|
|||
![]() |
|
||||
КЖ; C# Регистрация: 03.11.2005
Санкт-Петербург
Сообщений: 2,616
|
Цитата:
1. Использование зоопарка из VBA + Lisp + .NET 2. Использование абсолютных путей во всех методах, а если злобный админ или правила компании не позволяют создать каталог C:\p_sh.net\ , тогда что? 3. Вся логика программы внутри форм, более того, внутри кнопок. 4. Реакторы, которые Вы активируете по командам из лисп файла, поместите в автозагрузку dll, не издевайтесь над пользователем. Не так давно, на форуме обсуждали автозагрузку dll из Lisp, посмотрите, там более полный вариант, чем у Вас. 5. Методы P_sh_context_toolbar_load, AppEndOpen, AppNewDrawing, AppActivateDrawing класса P_sh_context_toolbar_load это лютый .... вызывать команду netload для загрузки команд определенных в этом же классе, простите, но это за гранью добра и зла. ЗЫ. Если что, то я не программист и программы писать не умею, на жизнь зарабатываю проектированием ЖБ конструкций. |
|||
![]() |
|
||||
новичок Регистрация: 19.06.2005
Ярославль
Сообщений: 3,396
|
Цитата:
![]() Цитата:
но меня устраивает уже тот факт, что: 1 использование удобно. 2 программа работает = выдает ожидаемый результат. Я готов конечно расширять горизонты, но в случае если к этому будет необходимость или интерес. с "классами" начал знакомится вот только что. |
|||
![]() |
|
||||
КЖ; C# Регистрация: 03.11.2005
Санкт-Петербург
Сообщений: 2,616
|
Вы меня извините, за назойливость, но тут не про расширение горизонтов нужно говорить, а об основах и понимании принципов. Понимании, что такое типы данных и как с ними работать, что такое архитектура программы и какие они бывают...
И еще совет, если уж Вам так нравиться работать с ini файлами (хотя это очень странно хранить настройки в INI, при наличии xml и json), выделите это в отдельные методы, т.к. натыкаться постоянно на конструкции типа: Код:
|
|||
![]() |
|
||||
Регистрация: 10.08.2013
Сообщений: 11,499
|
Здесь не о внутренней кухне - а о подходе к структуре программы. Еще один образец:
Код:
Или открыть любой из учебников по WinForms и дочитать до главы о контейнерах. И тогда код примет более "опрятный" вид: Код:
|
|||
![]() |
|
||||
новичок Регистрация: 19.06.2005
Ярославль
Сообщений: 3,396
|
красиво.
Цитата:
а вот кнопки рисовать это да-с, учебник зря-с не открывали-с. и главное: нужно было представлять, что он есть. Последний раз редактировалось p_sh, 20.12.2018 в 11:59. |
|||
![]() |
|
||||
Регистрация: 10.08.2013
Сообщений: 11,499
|
Там один и тот же код в десяток строк в каждом обработчике - полтысячи лишних строк. Когда можно было написать один обработчик даже в вашем варианте и просто присвоить всем кнопкам.
----- добавлено через ~9 мин. ----- отвыкайте от VBA стиля обработчиков -> не просто же так введен аргумент sender (ссылающийся на контрол-источник сообщения) в обработчиках событий контролов. |
|||
![]() |
|
||||
КЖ; C# Регистрация: 03.11.2005
Санкт-Петербург
Сообщений: 2,616
|
Цитата:
1 - чудовищно долго и трудоемко, 2 - рекомендую познакомиться с динамическими блоками, 3 - рекомендую посмотреть на задачу под другим углом, что позволит существенно увеличить производительность на пару порядков. |
|||
![]() |
|
||||
новичок Регистрация: 19.06.2005
Ярославль
Сообщений: 3,396
|
Цитата:
получается интересно |
|||
![]() |
![]() |
|
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Автокад 2015 виснет при смене формата отображения точек | markfsm | AutoCAD | 2 | 23.01.2018 08:40 |
Помогите решить проблему с настройками(?) автокад 2008, 2015: невозможно одновременно посылать на печать несколько листов | Ir4a | AutoCAD | 1 | 16.03.2017 15:12 |
Автокад 2015. Долго думает при вводе с клавиатуры ошибочной команды | Бали | AutoCAD | 3 | 11.12.2016 13:58 |