Переключение на Главную Страницу Страницы: [1] 2  ОтправитьПечать
Горячая тема (более 10 ответов) ТабличноеПоле, выделение нескольких строк с Shift? (число прочтений - 15032 )
pvase
God Member
*****
Отсутствует



Сообщений: 923
Местоположение: Киев
Зарегистрирован: 19. Мая 2006
Пол: Мужской
ТабличноеПоле, выделение нескольких строк с Shift?
15. Апреля 2008 :: 05:54
Печать  
Извините, но не нашел, как можно выделить несколько строк в табличном поле, удерживая Shift (Cntrl) или мышкой. Это можно сдлеать или нет (подскажите плиз как). Заранее спасибо.
  
Наверх
IP записан
 
JohnyDeath
1c++ power user
1c++ donor
Отсутствует



Сообщений: 3050
Местоположение: Волгоград
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: ТабличноеПоле, выделение нескольких строк с Sh
Ответ #1 - 15. Апреля 2008 :: 05:59
Печать  
Ну да, можно либо мышкой с Ctrl или Shift, либо указатели + Shift
  
Наверх
 
IP записан
 
vip
1c++ power user
Отсутствует



Сообщений: 1570
Зарегистрирован: 19. Мая 2006
Re: ТабличноеПоле, выделение нескольких строк с Sh
Ответ #2 - 15. Апреля 2008 :: 06:01
Печать  
pvase писал(а) 15. Апреля 2008 :: 05:54:
Извините, но не нашел, как можно выделить несколько строк в табличном поле, удерживая Shift (Cntrl) или мышкой. Это можно сдлеать или нет (подскажите плиз как). Заранее спасибо.

А чего искал? Улыбка Дави да выделяй.
С Shift выделяется связанный диапазон строк. Можно и клавишей и мышей.
С Ctrl несвязанный диапазон. Тут выделять, естественно, можно только мышей.
  
Наверх
ICQ  
IP записан
 
pvase
God Member
*****
Отсутствует



Сообщений: 923
Местоположение: Киев
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: ТабличноеПоле, выделение нескольких строк с Sh
Ответ #3 - 15. Апреля 2008 :: 06:08
Печать  
vip писал(а) 15. Апреля 2008 :: 06:01:
pvase писал(а) 15. Апреля 2008 :: 05:54:
Извините, но не нашел, как можно выделить несколько строк в табличном поле, удерживая Shift (Cntrl) или мышкой. Это можно сдлеать или нет (подскажите плиз как). Заранее спасибо.

А чего искал? Улыбка Дави да выделяй.
С Shift выделяется связанный диапазон строк. Можно и клавишей и мышей.
С Ctrl несвязанный диапазон. Тут выделять, естественно, можно только мышей.


Сенкс, понял. А программно они доступны, например хочу выделить и узнать в модуле какие выделены, или чтобы выделенные попали в предопр. процедуру НачалоПеретаскивания().

Не хочет все равно, какие параметры должны быть установлены для такого выделения (почему то не работает)?
Код
Выбрать все
Перем Источник,База;

//***************************************************************
Процедура ПриОткрытии()
	Источник = СоздатьОбъект("ODBCDataProvider.MSSQL");
	База = СоздатьОбъект("ODBCDatabase");
	Источник.БазаДанных = База;
КонецПроцедуры	// ПриОткрытии

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

	_Форма = СоздатьОбъект("Форма");
	ТабличноеПоле = _Форма.СоздатьЭлементУправленияНаФорме(Форма, "ТабличноеПоле", "ТабличноеПоле");

	ТабличноеПоле.СтильЗаголовков = 0;
	Колонки = ТабличноеПоле.Колонки;

	Колонка = Колонки.Добавить("DESCR");


	Колонка.Заголовок = "DESCR";
	Колонка.Данные = "DESCR";

	ТекстЗапроса = "
		|SELECT
		|	Спр.ID AS ID,
		|	Спр.DESCR AS DESCR,
		|	$Спр.ПолнНаименование AS ПолнНаименование
		|FROM
		|	$Справочник.Контрагенты AS Спр (NOLOCK)
		|WHERE
		|	1 = 1
		|";


	ТекКолонка = ТабличноеПоле.ТекущаяКолонка;
	ТабличноеПоле.ПоставщикДанных = "";
	Источник.УстТекстЗапроса(ТекстЗапроса);
	Источник.УстКлючПорядка("ID");
	ТабличноеПоле.ПоставщикДанных = Источник;
	ТабличноеПоле.ОбновитьСтроки();
	ТабличноеПоле.ТекущаяКолонка = ТекКолонка;

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

 




  
Наверх
IP записан
 
JohnyDeath
1c++ power user
1c++ donor
Отсутствует



Сообщений: 3050
Местоположение: Волгоград
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: ТабличноеПоле, выделение нескольких строк с Sh
Ответ #4 - 15. Апреля 2008 :: 06:21
Печать  
Програмно к выделенным строкам можно достучаться так:
Цитата:
ТабличноеПоле :: ВыделенныеСтроки / SelectedRows

Доступ: только чтение

Тип: ВыделенныеСтроки

Описание: Коллекция выделенных строк табличного поля

А насчет не работает: у тебя какая версия 1с++. Эта фича есть только в ночнике и в 3.0
  
Наверх
 
IP записан
 
pvase
God Member
*****
Отсутствует



Сообщений: 923
Местоположение: Киев
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: ТабличноеПоле, выделение нескольких строк с Sh
Ответ #5 - 15. Апреля 2008 :: 11:55
Печать  
JohnyDeath писал(а) 15. Апреля 2008 :: 06:21:
Програмно к выделенным строкам можно достучаться так:
Цитата:
ТабличноеПоле :: ВыделенныеСтроки / SelectedRows

Доступ: только чтение

Тип: ВыделенныеСтроки

Описание: Коллекция выделенных строк табличного поля

А насчет не работает: у тебя какая версия 1с++. Эта фича есть только в ночнике и в 3.0

Спасибо, но где его можно взять?
скачал: http://www.1cpp.ru/files/nightbuild.zip, там релиз: 2.5.0.6 - в нем не работает
а при попытке  загрузить http://www.1cpp.ru/files/nightbuild-2-3.zip совместно с FormEx.dll - 1С закрывается с ошибкой..
А без FormEx-а пишет ошибку:
_Форма = СоздатьОбъект("Форма");
...Неудачная попытка создания объекта (Форма)
  
Наверх
IP записан
 
JohnyDeath
1c++ power user
1c++ donor
Отсутствует



Сообщений: 3050
Местоположение: Волгоград
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: ТабличноеПоле, выделение нескольких строк с Sh
Ответ #6 - 15. Апреля 2008 :: 12:10
Печать  
а, ну да, забыл совсем:
Код
Выбрать все
ТабличноеПоле.РежимВыделения=1; 


(в версии 2.5.0.6 и старше)
  
Наверх
 
IP записан
 
kms
1c++ power user
1c++ moderator
Отсутствует


я хочу, чтоб сюда проложили
дорогу оттуда...

Сообщений: 4632
Зарегистрирован: 19. Мая 2006
Re: ТабличноеПоле, выделение нескольких строк с Sh
Ответ #7 - 15. Апреля 2008 :: 14:33
Печать  
pvase писал(а) 15. Апреля 2008 :: 06:08:
или чтобы выделенные попали в предопр. процедуру НачалоПеретаскивания().

Вот как-то такая идея в свое время не посетила.
Пожалуй, надо сделать, чтобы при LEFT_CLICK на выделенной строке, выделение не снималось (сейчас снимается).

Тогда в событии НачалоПеретаскивания можно будет проверить наличие выделенных строк и при желании упаковать их как-то и передать дальше по цепочке обработчиков событий D&D.
  

De quelle planète es-tu?
Наверх
 
IP записан
 
vip
1c++ power user
Отсутствует



Сообщений: 1570
Зарегистрирован: 19. Мая 2006
Re: ТабличноеПоле, выделение нескольких строк с Sh
Ответ #8 - 15. Апреля 2008 :: 16:05
Печать  
kms писал(а) 15. Апреля 2008 :: 14:33:
pvase писал(а) 15. Апреля 2008 :: 06:08:
или чтобы выделенные попали в предопр. процедуру НачалоПеретаскивания().

Вот как-то такая идея в свое время не посетила.
Пожалуй, надо сделать, чтобы при LEFT_CLICK на выделенной строке, выделение не снималось (сейчас снимается).

Тогда в событии НачалоПеретаскивания можно будет проверить наличие выделенных строк и при желании упаковать их как-то и передать дальше по цепочке обработчиков событий D&D.

Посетила такая идея сразу после появления возможности выделять строки. Было бы очень хорошо.
  
Наверх
ICQ  
IP записан
 
kms
1c++ power user
1c++ moderator
Отсутствует


я хочу, чтоб сюда проложили
дорогу оттуда...

Сообщений: 4632
Зарегистрирован: 19. Мая 2006
Re: ТабличноеПоле, выделение нескольких строк с Sh
Ответ #9 - 15. Апреля 2008 :: 18:44
Печать  
ОК. http://www.1cpp.ru/bugs/show_bug.cgi?id=3742

(*) изменен момент сброса массива выделенных строк

Короче, сбросить выделенные строки можно теперь LCLK/RCLK на невыделенной строке, или SHIFT+F5.
Может, конечно, и слегка непривычно все это получилось, но что теперь поделаешь. Улыбка
  

De quelle planète es-tu?
Наверх
 
IP записан
 
vip
1c++ power user
Отсутствует



Сообщений: 1570
Зарегистрирован: 19. Мая 2006
Re: ТабличноеПоле, выделение нескольких строк с Sh
Ответ #10 - 15. Апреля 2008 :: 19:02
Печать  
Оба на.
Спасибо. Ща потягаем Улыбка
  
Наверх
ICQ  
IP записан
 
vip
1c++ power user
Отсутствует



Сообщений: 1570
Зарегистрирован: 19. Мая 2006
Re: ТабличноеПоле, выделение нескольких строк с Sh
Ответ #11 - 15. Апреля 2008 :: 19:16
Печать  
А где ж оно?
Интересует ссылка в ветке с EV
  
Наверх
ICQ  
IP записан
 
kms
1c++ power user
1c++ moderator
Отсутствует


я хочу, чтоб сюда проложили
дорогу оттуда...

Сообщений: 4632
Зарегистрирован: 19. Мая 2006
Re: ТабличноеПоле, выделение нескольких строк с Sh
Ответ #12 - 15. Апреля 2008 :: 19:39
Печать  
Эээммм. Готово. Улыбка
  

De quelle planète es-tu?
Наверх
 
IP записан
 
vip
1c++ power user
Отсутствует



Сообщений: 1570
Зарегистрирован: 19. Мая 2006
Re: ТабличноеПоле, выделение нескольких строк с Sh
Ответ #13 - 15. Апреля 2008 :: 19:46
Печать  
Попробовал. Интересовало потащить всю кучу выделенных строк.
Не случилось. Тянется только строка, за которую держишся.
Или просто нужно переписать процедуру Перетаскивание() с учетом нескольких строк?
  
Наверх
ICQ  
IP записан
 
kms
1c++ power user
1c++ moderator
Отсутствует


я хочу, чтоб сюда проложили
дорогу оттуда...

Сообщений: 4632
Зарегистрирован: 19. Мая 2006
Re: ТабличноеПоле, выделение нескольких строк с Sh
Ответ #14 - 15. Апреля 2008 :: 20:20
Печать  
vip писал(а) 15. Апреля 2008 :: 19:46:
Попробовал. Интересовало потащить всю кучу выделенных строк.
Не случилось. Тянется только строка, за которую держишся.
Или просто нужно переписать процедуру Перетаскивание() с учетом нескольких строк?

Да, я понимаю, но очень лениво сейчас рисовать.
А использовать массив строк в событиях D&D теперь должно получиться при правильном подходе.
  

De quelle planète es-tu?
Наверх
 
IP записан
 
Переключение на Главную Страницу Страницы: [1] 2 
ОтправитьПечать