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



Сообщений: 923
Местоположение: Киев
Зарегистрирован: 19. Мая 2006
Пол: Мужской
ТП.ВыделенныеСтроки.Количество() и Получить()?
05. Мая 2008 :: 10:21
Печать  
Как можно проверить, есть выделенные строки или нет?
Дело в том, что ТП.ВыделенныеСтроки.Количество() возвращает всегда больше 0 (оно и понятно всегда какая то строка выделена), но получается ошибочка при попытке ТП.ВыделенныеСтроки.Получить(1). Ставить проверку на > 1, или это баг который иправлен?
  
Наверх
IP записан
 
artbear
1c++ developer
1c++ moderator
Отсутствует


Эх, дайте что-нибудь новенькое
да полезное потести

Сообщений: 6303
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: ТП.ВыделенныеСтроки.Количество() и Получить()?
Ответ #1 - 05. Мая 2008 :: 11:34
Печать  
Блин, как бы нам, разработчикам, приучить народ к такой схеме:
если есть подозрения о проблемах в 1С++ или что-то непонятно, создай соответствующий баг в багзилле, а там автор раздела разберется.
Т.е. ИМХО идеальный вариант - баг + ветка на форуме Улыбка

Разработчики и пользователи, что скажете?
  

OpenConf developer :: http://openconf.1cpp.ru&&FormEx developer :: http://formex.dorex.ru&&1C++ active developer && tester :: www.1cpp.ru
Наверх
GTalkSkype/VoIPICQ  
IP записан
 
mvgfirst
Full Member
***
Отсутствует


В борьбе бобра с ослом
всегда побеждает бобро!

Сообщений: 152
Местоположение: Украина г. Кривой Рог
Зарегистрирован: 17. Августа 2007
Пол: Мужской
Re: ТП.ВыделенныеСтроки.Количество() и Получить()?
Ответ #2 - 05. Мая 2008 :: 11:52
Печать  
Так "прилепи" ветку в которой подробно опиши как и куда писать об ошибке... На какой стадии "непонятку" считать ошибкой... (а то ведь багзилла может превратиться в сборник вопросов на которые и так уже есть ответы)...
А самое главное формат сообщения об ошибке, что должно быть чего недолжно быть... и т.п.
Я думаю если такая ветка будет прибита ввверху форума... толку будет больше.
Ну а админы пусть следят за порядком и чуть что "тыкают" носом в эту ветку...
  
Наверх
ICQ  
IP записан
 
kms
1c++ power user
1c++ moderator
Отсутствует


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

Сообщений: 4632
Зарегистрирован: 19. Мая 2006
Re: ТП.ВыделенныеСтроки.Количество() и Получить()?
Ответ #3 - 05. Мая 2008 :: 12:30
Печать  
pvase

Торопишься чуток.
Документацию на ВыделенныеСтроки::Получить() изучай.
  

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



Сообщений: 2537
Местоположение: Нижний Новгород
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: ТП.ВыделенныеСтроки.Количество() и Получить()?
Ответ #4 - 05. Мая 2008 :: 13:16
Печать  
pvase писал(а) 05. Мая 2008 :: 10:21:
Дело в том, что ТП.ВыделенныеСтроки.Количество() возвращает всегда больше 0 (оно и понятно всегда какая то строка выделена)


Да нет, не всегда так. Ты на эту строку с контролом щелкни - тогда будет нормальное выделение.
А пока... с моей точки зрения пока поведение неверное, что всегда возвращает ТП.ВыделенныеСтроки.Количество() > 0.
  
Наверх
 
IP записан
 
kms
1c++ power user
1c++ moderator
Отсутствует


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

Сообщений: 4632
Зарегистрирован: 19. Мая 2006
Re: ТП.ВыделенныеСтроки.Количество() и Получить()?
Ответ #5 - 05. Мая 2008 :: 19:06
Печать  
Arta писал(а) 05. Мая 2008 :: 13:16:
Да нет, не всегда так. Ты на эту строку с контролом щелкни - тогда будет нормальное выделение.
А пока... с моей точки зрения пока поведение неверное, что всегда возвращает ТП.ВыделенныеСтроки.Количество() > 0.

Проблема у автора связана с тем, что он прочитал документацию по диагонали и не заметил, что стандартная индексация в коллекциях идет от нуля.

А ты Артем, я так понимаю, решил добить меня, заспамив свое мнение по выделенным строкам по разным веткам.
Я тебе это еще припомню. Очень довольный
  

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



Сообщений: 2537
Местоположение: Нижний Новгород
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: ТП.ВыделенныеСтроки.Количество() и Получить()?
Ответ #6 - 05. Мая 2008 :: 19:20
Печать  
kms писал(а) 05. Мая 2008 :: 19:06:
А ты Артем, я так понимаю, решил добить меня, заспамив свое мнение по выделенным строкам по разным веткам.
Я тебе это еще припомню. Очень довольный

Кстати, Миш, а как отказаться от выделения строк, если я выделил их все? Подмигивание Замучаешься...
  
Наверх
 
IP записан
 
kms
1c++ power user
1c++ moderator
Отсутствует


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

Сообщений: 4632
Зарегистрирован: 19. Мая 2006
Re: ТП.ВыделенныеСтроки.Количество() и Получить()?
Ответ #7 - 05. Мая 2008 :: 19:23
Печать  
Arta писал(а) 05. Мая 2008 :: 19:20:
Кстати, Миш, а как отказаться от выделения строк, если я выделил их все? Подмигивание Замучаешься...

Я ждал этого вопроса!  Улыбка

Никак, надо было одну невыделенную строчку оставить.
А теперь ты попал Улыбка


P.S.
F5 или SHIFT-F5 попробуй Улыбка
  

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



Сообщений: 2537
Местоположение: Нижний Новгород
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: ТП.ВыделенныеСтроки.Количество() и Получить()?
Ответ #8 - 05. Мая 2008 :: 19:32
Печать  
kms писал(а) 05. Мая 2008 :: 19:23:

P.S.
F5 или SHIFT-F5 попробуй Улыбка


У меня в классе ТП на F5 стоит обновление ТП Печаль
Shift-F5 не снимает.
  
Наверх
 
IP записан
 
kms
1c++ power user
1c++ moderator
Отсутствует


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

Сообщений: 4632
Зарегистрирован: 19. Мая 2006
Re: ТП.ВыделенныеСтроки.Количество() и Получить()?
Ответ #9 - 05. Мая 2008 :: 19:33
Печать  
Arta писал(а) 05. Мая 2008 :: 19:32:
Shift-F5 не снимает.

А должно бы (серьезно).

Цитата:
У меня в классе ТП на F5 стоит обновление ТП Печаль

Каким образом, кстати, это реализовано?
  

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



Сообщений: 2537
Местоположение: Нижний Новгород
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: ТП.ВыделенныеСтроки.Количество() и Получить()?
Ответ #10 - 05. Мая 2008 :: 19:39
Печать  
kms писал(а) 05. Мая 2008 :: 19:33:
Каким образом, кстати, это реализовано?


В классе перехватчика ВСЕХ форм:

Код
Выбрать все
Процедура ПриНажатииКнопкиКлавиатуры(Код, Альт, Шифт, Контрол, Символ, ФСО) Экспорт

	Перехватчик.ВыполнитьОригинальноеСобытиеГК(Конт, "ПриНажатииКнопкиКлавиатуры", Код, Альт, Шифт, Контрол, Символ, ФСО);

	Если ФСО <> 0 Тогда
		АктивныйЭлемент = Конт.Форма.АктивныйЭлемент();

		Если ПустоеЗначение(АктивныйЭлемент) = 0 Тогда
			_Форма = СоздатьОбъект("Форма");
			_Форма.УстановитьФорму(Конт.Форма);
			Попытка
				Элемент = _Форма.ПолучитьЭлементУправления(АктивныйЭлемент);
				//Сообщить(Элемент);
			Исключение
				//Сообщить(ОписаниеОшибки());
			КонецПопытки;
		КонецЕсли;
		Если ПустоеЗначение(Элемент) = 0 Тогда
			Если Информатор.МетодСуществует(Элемент, "ПриНажатииКнопкиКлавиатуры") = 1 Тогда
				Элемент.ПриНажатииКнопкиКлавиатуры(Код, Альт, Шифт, Контрол, Символ, ФСО);
			КонецЕсли;
		КонецЕсли;
	КонецЕсли;

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





в классе ТП:
Код
Выбрать все
Процедура ПриНажатииКнопкиКлавиатуры(Код, А, Ш, К, Символ, ФСО) Экспорт
	Если (К = 1) И (А + Ш = 0) Тогда
		Если (Код = 67) ИЛИ (Код = 45)  Тогда // Ctrl-C ИЛИ Ctrl-Ins
			Если ПустоеЗначение(Сам().ТекущаяКолонка.Данные) = 0 Тогда
				БуферОбмена = СоздатьОбъект("БуферОбмена");
				Если ПустоеЗначение(Сам().ТекущиеДанные) = 0 Тогда
					Данные)));
				КонецЕсли;
			КонецЕсли;
			ФСО = 0;
		КонецЕсли;
	КонецЕсли;

	Если Код = 116 Тогда
		Сам().ОбновитьСтроки();
		ФСО = 0;
	КонецЕсли;
КонецПроцедуры
 




Вуаля, мон ами!
  
Наверх
 
IP записан
 
Arta
1c++ power user
Отсутствует



Сообщений: 2537
Местоположение: Нижний Новгород
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: ТП.ВыделенныеСтроки.Количество() и Получить()?
Ответ #11 - 05. Мая 2008 :: 19:40
Печать  
Еще раз спасибо за ПолучитьЭлементУправления  Смех
  
Наверх
 
IP записан
 
kms
1c++ power user
1c++ moderator
Отсутствует


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

Сообщений: 4632
Зарегистрирован: 19. Мая 2006
Re: ТП.ВыделенныеСтроки.Количество() и Получить()?
Ответ #12 - 05. Мая 2008 :: 19:42
Печать  
Arta писал(а) 05. Мая 2008 :: 19:40:
Еще раз спасибо за ПолучитьЭлементУправления  Смех

Да уж... Улыбка

У тебя SHIFT-F5 до ТП просто не доходит.
Ну, повесь тогда очистку коллекции на любую кнопку, как ты сделал для F5, - и дело с концом.
  

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



Сообщений: 2537
Местоположение: Нижний Новгород
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: ТП.ВыделенныеСтроки.Количество() и Получить()?
Ответ #13 - 05. Мая 2008 :: 19:44
Печать  
kms писал(а) 05. Мая 2008 :: 19:42:
У тебя SHIFT-F5 до ТП просто не доходит.

Логично. Тады ой.
  
Наверх
 
IP записан
 
Arta
1c++ power user
Отсутствует



Сообщений: 2537
Местоположение: Нижний Новгород
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: ТП.ВыделенныеСтроки.Количество() и Получить()?
Ответ #14 - 05. Мая 2008 :: 19:50
Печать  
Arta писал(а) 05. Мая 2008 :: 19:20:
Кстати, Миш, а как отказаться от выделения строк, если я выделил их все? Подмигивание Замучаешься...


Еще раз Shift-End/Home. Вопрос снят.
  
Наверх
 
IP записан
 
Переключение на Главную Страницу Страницы: [1] 2 
ОтправитьПечать