Переключение на Главную Страницу Страницы: 1 [2]  ОтправитьПечать
Горячая тема (более 10 ответов) Перетаскивание из древовидного списка (число прочтений - 5752 )
Eprst
God Member
*****
Отсутствует



Сообщений: 3397
Зарегистрирован: 08. Октября 2007
Re: Перетаскивание из древовидного списка
Ответ #15 - 14. Мая 2010 :: 05:14
Печать  
Leierkastenmann писал(а) 13. Мая 2010 :: 10:52:
Аналогия не сработала  Улыбка Благодарю.


Посмотри в реестре, как зарегистрирован контрол..
И, вот это запусти, работает?

  

_____________________003.ert ( 96 KB | Загрузки )
Наверх
 
IP записан
 
Eprst
God Member
*****
Отсутствует



Сообщений: 3397
Зарегистрирован: 08. Октября 2007
Re: Перетаскивание из древовидного списка
Ответ #16 - 14. Мая 2010 :: 05:35
Печать  
+ Какие из этих контролов не работают у тебя ?
  

_________________002.ert ( 10 KB | Загрузки )
Наверх
 
IP записан
 
Leierkastenmann
Full Member
***
Отсутствует


I Love YaBB 2!

Сообщений: 114
Зарегистрирован: 30. Марта 2007
Re: Перетаскивание из древовидного списка
Ответ #17 - 14. Мая 2010 :: 05:38
Печать  
Да с работой в VB вроде как понятно все, и примеры всякие подобные видел. У меня-то проблемы в 1ске. Вот простейший пример кода, в котором HitTest не срабатывает.
Код
Выбрать все
Перем СписокАктивИкс, ОбработчикСкриптов;


Процедура ПослеОткрытия()

	ОбъектФорма 	= СоздатьОбъект("Форма");
	СписокАктивИкс 	= СоздатьОбъект("АктивИкс");

	ОбъектФорма.УстановитьФорму(Форма);

	ОбъектФорма.СоздатьЭлементУправления(СписокАктивИкс, "фСписок");

	СписокАктивИкс.СоздатьЭУ("MSComCtlLib.TreeCtrl");
	СписокАктивИкс.Объект.LineStyle=1;
	СписокАктивИкс.Объект.Style=7;
	СписокАктивИкс.Объект.Indentation=0;
	СписокАктивИкс.Объект.HideSelection = 0;
	СписокАктивИкс.Объект.OLEDragMode = 1;
	СписокАктивИкс.Объект.OLEDropMode = 1;

	ОбработчикСкриптов = СоздатьОбъект("MSScriptControl.ScriptControl");
	ОбработчикСкриптов.Language="vbscript";
	ОбработчикСкриптов.AddObject("TreeView",СписокАктивИкс.Объект);

	Корень = ОбработчикСкриптов.Eval("TreeView.Nodes.Add(,4, ,""Корень"")");

	СписокАктивИкс.Объект.Nodes.Add(Корень, 4, "Узел1", "Узел 1");
	СписокАктивИкс.Объект.Nodes.Add(Корень, 4, "Узел2", "Узел 2");

КонецПроцедуры	// ПослеОткрытия



Процедура фСписок_MouseDown(Кнопка, Шифт, Х, У)

	Попытка
		СписокАктивИкс.Объект.SelectedItem = СписокАктивИкс.Объект.HitTest(Х, У);
	Исключение
		Сообщить("Не удалось спозиционироваться на узле по координатам Х=" + Х + " У = " + У);
	КонецПопытки;

КонецПроцедуры
 

  
Наверх
 
IP записан
 
Leierkastenmann
Full Member
***
Отсутствует


I Love YaBB 2!

Сообщений: 114
Зарегистрирован: 30. Марта 2007
Re: Перетаскивание из древовидного списка
Ответ #18 - 14. Мая 2010 :: 05:48
Печать  
Eprst писал(а) 14. Мая 2010 :: 05:35:
+ Какие из этих контролов не работают у тебя ?


Все создались из этих.
  
Наверх
 
IP записан
 
Leierkastenmann
Full Member
***
Отсутствует


I Love YaBB 2!

Сообщений: 114
Зарегистрирован: 30. Марта 2007
Re: Перетаскивание из древовидного списка
Ответ #19 - 14. Мая 2010 :: 05:53
Печать  
Eprst писал(а) 14. Мая 2010 :: 05:14:
Leierkastenmann писал(а) 13. Мая 2010 :: 10:52:
Аналогия не сработала  Улыбка Благодарю.


Посмотри в реестре, как зарегистрирован контрол..
И, вот это запусти, работает?



Это тоже работает. Да я уже понял в чем моя проблема была с созданием контролов, помутнение рассудка просто  Улыбка
Проблемы теперь уже другие...
  
Наверх
 
IP записан
 
berezdetsky
1c++ power user
Отсутствует


barba non facit sisadminum

Сообщений: 1986
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Перетаскивание из древовидного списка
Ответ #20 - 14. Мая 2010 :: 07:17
Печать  
Leierkastenmann писал(а) 14. Мая 2010 :: 05:38:
Да с работой в VB вроде как понятно все, и примеры всякие подобные видел. У меня-то проблемы в 1ске.

В 1С размерность другая. Умножь X и Y на 15.
  

пароль как коньяк, чем больше звездочек, тем лучше
Наверх
IP записан
 
Leierkastenmann
Full Member
***
Отсутствует


I Love YaBB 2!

Сообщений: 114
Зарегистрирован: 30. Марта 2007
Re: Перетаскивание из древовидного списка
Ответ #21 - 14. Мая 2010 :: 07:28
Печать  
Спасибо огромное  Улыбка А это где-нибудь записано или это тайное знание?  Улыбка
  
Наверх
 
IP записан
 
Eprst
God Member
*****
Отсутствует



Сообщений: 3397
Зарегистрирован: 08. Октября 2007
Re: Перетаскивание из древовидного списка
Ответ #22 - 14. Мая 2010 :: 07:37
Печать  
Да работает там все, у тебя просто HitTest по этим координатам возвращает не узел, вот и исключение в присвоении выскакивает.

А блин, поздно обновился.. про размерность ужо написали Улыбка
  
Наверх
 
IP записан
 
berezdetsky
1c++ power user
Отсутствует


barba non facit sisadminum

Сообщений: 1986
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Перетаскивание из древовидного списка
Ответ #23 - 14. Мая 2010 :: 07:44
Печать  
Leierkastenmann писал(а) 14. Мая 2010 :: 07:28:
А это где-нибудь записано или это тайное знание?  Улыбка

TreeView меряет координаты в твипах, а 1С передаёт в пикселях. Формулы пересчёта можно найти в MSDN.
  

пароль как коньяк, чем больше звездочек, тем лучше
Наверх
IP записан
 
Переключение на Главную Страницу Страницы: 1 [2] 
ОтправитьПечать