Переключение на Главную Страницу Страницы: 1 2 [3]  ОтправитьПечать
Очень популярная тема (более 25 ответов) Кто делал "Дерево" на форме(наприм. документа)? (число прочтений - 16705 )
JohnyDeath
1c++ power user
1c++ donor
Отсутствует



Сообщений: 3050
Местоположение: Волгоград
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Кто делал "Дерево" на форме(наприм. документа)
Ответ #30 - 07. Декабря 2006 :: 07:37
Печать  
DionX писал(а) 07. Декабря 2006 :: 06:54:
Код
Выбрать все
Nodes.Add(Корень,4,Значение,Имя,2); 



Как в дерево TreeCtrl поместить значения агрегартных типов 1С? Ругается "Плохой тип переменной".


Как вариант можно воспользоваться методом "ЗначениеВСтрокуБД" класса "MetaDataWork" ,
а потом таким же макаром и вытаскивать "ЗначениеИзСтрокиБД"
  
Наверх
 
IP записан
 
DionX
Senior Member
****
Отсутствует



Сообщений: 373
Местоположение: Кемерово
Зарегистрирован: 22. Августа 2006
Пол: Мужской
Re: Кто делал "Дерево" на форме(наприм. документа)
Ответ #31 - 08. Декабря 2006 :: 00:21
Печать  
хм... мысль... спасибки
  
Наверх
ICQ  
IP записан
 
Shurik71
Junior Member
**
Отсутствует


I Love YaBB 2!

Сообщений: 33
Зарегистрирован: 20. Мая 2006
Re: Кто делал "Дерево" на форме(наприм. документа)
Ответ #32 - 08. Декабря 2006 :: 07:49
Печать  
По поводу использования картинок из библиотеки - можно предложить при начале работы системы извлекать картинку из библиотеки в файл при отсутствии такового файла.
  
Наверх
 
IP записан
 
lustin
1c++ power user
Отсутствует


1C *.*, ROR, Java - на
этом остановимся

Сообщений: 907
Местоположение: Москва
Зарегистрирован: 20. Октября 2006
Пол: Мужской
Re: Кто делал "Дерево" на форме(наприм. документа)
Ответ #33 - 14. Декабря 2006 :: 19:16
Печать  
Вот у меня в параметрах написано Newbies поэтому думаю можно спросить Смущённый
вот имеем
ImageList  Member of MSComctlLib
Contains a collection of ListImage objects, each of which can be referred to by its index or key


То есть коллекция объектов ListImage который в свою очередь связан с классом IPictureDisp - который я так понимаю является OLE объектом. ну вообщем понятно

Вопрос: тогда в каком виде хранит 1С объект "Картинка" на форме, и как это узнать - все таки очень хочется иметь полную библиотеку объектов в одном файле класса или обработки

P.S. ЕСтественно перед этим вопросом я попробовал явное присвоение на всякий случай

Код
Выбрать все
ms_Дерево.Объект.ImageList=Картинки; 

где Картинки - стандартный объект 1С на форме типа "Картинка" и естественно выдало ошибку

Сейчас во все филиалы ходит этакий zip-архив с репозитарием классов где в папке Classes/ImageCol находятся все возможные иконки сгрупированные по видам

  

бизнес-процесс как техническое задание прекрасно, только у бизнеса нет процессов; у бизнеса есть желание выжить
Наверх
GTalkSkype/VoIPICQ  
IP записан
 
lustin
1c++ power user
Отсутствует


1C *.*, ROR, Java - на
этом остановимся

Сообщений: 907
Местоположение: Москва
Зарегистрирован: 20. Октября 2006
Пол: Мужской
Re: Кто делал "Дерево" на форме(наприм. документа)
Ответ #34 - 14. Декабря 2006 :: 20:13
Печать  
И еще один момент ActiveX MSComctlLib.TreeView не содержит очень полезного свойства узла дерева - кто нибудь знает контрол для реализации дерева с пометками

Поясню - Идея в том чтобы сделать структурированный список с пометками
  

бизнес-процесс как техническое задание прекрасно, только у бизнеса нет процессов; у бизнеса есть желание выжить
Наверх
GTalkSkype/VoIPICQ  
IP записан
 
Phoenix
Senior Member
****
Отсутствует


itpath.ru

Сообщений: 398
Местоположение: Москва
Зарегистрирован: 15. Июня 2006
Пол: Мужской
Re: Кто делал "Дерево" на форме(наприм. документа)
Ответ #35 - 18. Декабря 2006 :: 06:34
Печать  
чем vTools не нравится?
я у себя использую, доволен.
  

Лень двигатель прогресса.&&http://www.itpath.ru&&;
Наверх
IP записан
 
lustin
1c++ power user
Отсутствует


1C *.*, ROR, Java - на
этом остановимся

Сообщений: 907
Местоположение: Москва
Зарегистрирован: 20. Октября 2006
Пол: Мужской
Re: Кто делал "Дерево" на форме(наприм. документа)
Ответ #36 - 19. Декабря 2006 :: 17:22
Печать  
Phoenix писал(а) 18. Декабря 2006 :: 06:34:
чем vTools не нравится?
я у себя использую, доволен.


1. не нравится тем что проект vTools закрыт аж с 2004 года как я вижу по основному сайту
2. все ссылки на downloads - на сайте vtools битые
3. мое личное мнение по стабильности ActiveX компонент в использовании и разработке
4. возможность получить помощь по ActiveX будь то использование в 1С++, VB или еще где-нибудь - структура методов и алгоритмы их использования везде одинаковы

- в данном случае, как оказалось у объекта treeview имеется свойство
Property Checkboxes As Boolean - которое и отвечает за пометку в дереве

соответственно существует и событие
Event NodeCheck(Node As Node) - которое возвращает элемент дерева у которого изменена пометка

Так что все проблемы только от незнания и неумения внимательно прочитать документацию
« Последняя редакция: 20. Декабря 2006 :: 07:08 - lustin »  

бизнес-процесс как техническое задание прекрасно, только у бизнеса нет процессов; у бизнеса есть желание выжить
Наверх
GTalkSkype/VoIPICQ  
IP записан
 
grayrat
Junior Member
**
Отсутствует



Сообщений: 99
Местоположение: Russia, Moscow
Зарегистрирован: 20. Мая 2006
Пол: Мужской
Re: Кто делал "Дерево" на форме(наприм. документа)
Ответ #37 - 20. Января 2007 :: 10:49
Печать  
А кто-нибудь делал перетаскивание на MSComctlLib.TreeCtrl? У меня попытка обработать события OLEDragDrop или OLEDragOver нафиг валит валит 1с... И как обойти чего-то сообразить не могу. Смысл в том, что бы перетащить строку из ТП на дерево и получить узел, на которой эта строка упала. Может, делал кто?
  
Наверх
 
IP записан
 
grayrat
Junior Member
**
Отсутствует



Сообщений: 99
Местоположение: Russia, Moscow
Зарегистрирован: 20. Мая 2006
Пол: Мужской
Re: Кто делал "Дерево" на форме(наприм. документа)
Ответ #38 - 22. Января 2007 :: 12:25
Печать  
А как в дереве у ноды поменять родителя? Кто-нибудь может подсказать?
ТекущийУзел.Parent = НовыйУзелРодитель дает ошибку "Метод не найден"  Печаль

ЗЫ: Нашел
Код
Выбрать все
  ScriptControl = СоздатьОбъект("MSScriptControl.ScriptControl");
  ScriptControl.Language = "vbscript";
  ScriptControl.AddObject("n1", ТекущийУзел);
  ScriptControl.AddObject("n2", НовыйУзелРодитель);
  ScriptControl.ExecuteStatement("Set n1.Parent = n2");
 

« Последняя редакция: 22. Января 2007 :: 14:20 - grayrat »  
Наверх
 
IP записан
 
Переключение на Главную Страницу Страницы: 1 2 [3] 
ОтправитьПечать