СписокЭлементов.СфокусированныйЭлемент (ListView.FocusedItem) Свойство

Использование

Только чтение.

Значение

Тип: ЭлементСпискаЭлементов (ListViewItem).

Возвращает элемент, который в настоящее время имеет фокус.

Примечание

Пример

СфокусированныйЭлемент1 = СписокЭлементов1.СфокусированныйЭлемент;
Полный пример кода

Копировать     Выделить всё

Перем Ф, СписокЭлементов1; Функция ИзDecВ_Hex(Знач ЗнDec) Рез = ""; Для А = -6 По -1 Цикл Рез = Сред("0123456789ABCDEF", (ЗнDec % 16) + 1, 1) + Рез; ЗнDec = Цел(ЗнDec / 16); КонецЦикла; Возврат Рез; КонецФункции Функция ИзHexВ_RGB(Знач ЗнHex) Ж = Новый Массив; Для А = -6 По -1 Цикл Ж.Добавить(СтрНайти("0123456789ABCDEF",Сред(ЗнHex, -А, 1)) - 1); КонецЦикла; М = Новый Массив; М.Добавить((Ж[5] * 16) + Ж[4]); М.Добавить((Ж[3] * 16) + Ж[2]); М.Добавить((Ж[1] * 16) + Ж[0]); Возврат М; КонецФункции Функция РазобратьСтроку(Строка, Разделитель) Стр = СтрЗаменить(Строка,Разделитель,символы.ПС); М = Новый Массив; Если ПустаяСтрока(Стр) Тогда Возврат М; КонецЕсли; Для Ч = 1 По СтрЧислоСтрок(Стр) Цикл М.Добавить(СтрПолучитьСтроку(Стр,Ч)); КонецЦикла; Возврат М; КонецФункции Функция СообщитьФокус() Экспорт СфокусированныйЭлемент1 = СписокЭлементов1.СфокусированныйЭлемент; Если СфокусированныйЭлемент1 = Неопределено Тогда Ф.ОкноСообщений().Показать("В фокусе: ничего нет"); Иначе Подэлементы = СфокусированныйЭлемент1.Подэлементы; Колич2 = СписокЭлементов1.Колонки.Количество; Стр = ""; Для А2 = 0 По Колич2 - 1 Цикл Стр = Стр + " - " + Подэлементы.Элемент(А2).Текст; КонецЦикла; Ф.ОкноСообщений().Показать("В фокусе: " + Стр, "В фокусе"); КонецЕсли; СписокЭлементов1.Фокус(); КонецФункции ПодключитьВнешнююКомпоненту("C:\444\111\OneScriptForms\OneScriptForms\bin\Debug\OneScriptForms.dll"); Ф = Новый ФормыДляОдноСкрипта(); Форма1 = Ф.Форма(); Форма1.Ширина = 700; Форма1.Отображать = Истина; Форма1.Показать(); Форма1.Активизировать(); СписокЭлементов1 = Форма1.ЭлементыУправления.Добавить(Ф.СписокЭлементов()); СписокЭлементов1.Стыковка = Ф.СтильСтыковки.Лево; СписокЭлементов1.Ширина = Форма1.КлиентШирина - 130; СписокЭлементов1.РежимОтображения = Ф.РежимОтображения.Подробно; СписокЭлементов1.АвтоУпорядочивание = Истина; // подготовим мелкие значки СписокИзображений1 = Ф.СписокИзображений(); СписокИзображений1.РазмерИзображения = Ф.Размер(16, 16); СписокЭлементов1.СписокМаленькихИзображений = СписокИзображений1; СтрКартинка1 = "AAABAAEAEBAAAAEAIABoBAAAFgAAACgAAAAQAAAAIAAAAAEAIAAAAAAAQAQAAAAAAAAAAAAAAAAAAAAAAAD"; Для А = 1 По 1365 Цикл СтрКартинка1 = СтрКартинка1 + "/"; КонецЦикла; СтрКартинка1 = СтрКартинка1 + "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=="; СписокЭлементов1.ПриостановитьРазмещение(); Колонки1 = СписокЭлементов1.Колонки; Колонка1 = Ф.Колонка("Имя цвета", 250, Ф.ГоризонтальноеВыравнивание.Центр); Колонка1.ВыравниваниеТекста = Ф.ГоризонтальноеВыравнивание.Центр; Колонка1.Текст = "Имя цвета"; Колонка1.Ширина = Колонка1.Ширина + 10; Колонки1.Добавить(Колонка1); Колонки1.Добавить(Ф.Колонка("R", 40, 1)); Колонки1.Добавить(Ф.Колонка("G", 40, 1)); Колонки1.Добавить(Ф.Колонка("B", 40, 1)); Колонки1.Добавить(Ф.Колонка("Dec", 70, 1)); Колонки1.Добавить(Ф.Колонка("Hex", 70, 1)); М3 = РазобратьСтроку(Ф.СвойстваОбъекта(Ф.Цвет()), Символы.ПС); Для А = 0 По М3.ВГраница() Цикл Картинка1 = Ф.Картинка(СтрКартинка1); М4 = РазобратьСтроку(М3[А], " "); ИмяЦвета = М4[0]; Попытка Цв = Ф.Цвет().ИзИмени(ИмяЦвета); Исключение Продолжить; КонецПопытки; Dec = (Цв.ЗначениеКрасный * 65536) + (Цв.ЗначениеЗеленый * 256) + Цв.ЗначениеСиний; Hex = ИзDecВ_Hex(Dec); М_RGB = ИзHexВ_RGB(Hex); АтрибутыКартинки1 = Картинка1.Блокировать(); М1 = Картинка1.ПолучитьБайты(АтрибутыКартинки1); Если Картинка1.ФорматПикселей = Ф.ФорматПикселей.Бит32АКЗС Тогда А5 = 0; Пока А5 < М1.Количество Цикл М1.Установить(А5 + 0, Цв.ЗначениеСиний); М1.Установить(А5 + 1, Цв.ЗначениеЗеленый); М1.Установить(А5 + 2, Цв.ЗначениеКрасный); М1.Установить(А5 + 3, Цв.ЗначениеАльфа); А5 = А5 + 4; КонецЦикла; КонецЕсли; Картинка1.УстановитьБайты(АтрибутыКартинки1, М1); Картинка1.Разблокировать(АтрибутыКартинки1); СписокИзображений1.Изображения.Добавить(Картинка1); Элементы = СписокЭлементов1.Элементы; Элемент1 = Ф.ЭлементСпискаЭлементов(ИмяЦвета, СписокИзображений1.Изображения.Количество - 1); Элемент1.ИспользоватьСтильДляПодэлементов = Ложь; Элементы.Добавить(Элемент1); Подэлементы1 = Элемент1.Подэлементы; Подэлементы1.Добавить(Ф.ПодэлементСпискаЭлементов(М_RGB[0])); Подэлементы1.Добавить(Ф.ПодэлементСпискаЭлементов(М_RGB[1])); Подэлементы1.Добавить(Ф.ПодэлементСпискаЭлементов(М_RGB[2])); Подэлементы1.Добавить(Ф.ПодэлементСпискаЭлементов("" + Dec)); Подэлементы1.Добавить(Ф.ПодэлементСпискаЭлементов(Hex)); КонецЦикла; СписокЭлементов1.ВозобновитьРазмещение(); Кнопка1 = Форма1.ЭлементыУправления.ДобавитьКнопку(); Кнопка1.Текст = "Сообщить фокус"; Кнопка1.Лево = СписокЭлементов1.Лево + СписокЭлементов1.Ширина + 5; Кнопка1.Верх = СписокЭлементов1.Верх + 5; Кнопка1.Ширина = 122; Кнопка1.Высота = 53; Кнопка1.Нажатие = Ф.Действие(ЭтотОбъект, "СообщитьФокус"); СписокЭлементов1.Фокус(); Ф.ЗапуститьОбработкуСобытий();

Тестовый код

Копировать     Выделить всё

Перем Ф, СписокЭлементов1, ВФокусе, Форма1; Функция ИзDecВ_Hex(Знач ЗнDec) Рез = ""; Для А = -6 По -1 Цикл Рез = Сред("0123456789ABCDEF", (ЗнDec % 16) + 1, 1) + Рез; ЗнDec = Цел(ЗнDec / 16); КонецЦикла; Возврат Рез; КонецФункции Функция ИзHexВ_RGB(Знач ЗнHex) Ж = Новый Массив; Для А = -6 По -1 Цикл Ж.Добавить(СтрНайти("0123456789ABCDEF",Сред(ЗнHex, -А, 1)) - 1); КонецЦикла; М = Новый Массив; М.Добавить((Ж[5] * 16) + Ж[4]); М.Добавить((Ж[3] * 16) + Ж[2]); М.Добавить((Ж[1] * 16) + Ж[0]); Возврат М; КонецФункции Функция РазобратьСтроку(Строка, Разделитель) Стр = СтрЗаменить(Строка,Разделитель,символы.ПС); М = Новый Массив; Если ПустаяСтрока(Стр) Тогда Возврат М; КонецЕсли; Для Ч = 1 По СтрЧислоСтрок(Стр) Цикл М.Добавить(СтрПолучитьСтроку(Стр,Ч)); КонецЦикла; Возврат М; КонецФункции Функция СообщитьФокус() Экспорт СписокЭлементов1.Фокус(); СфокусированныйЭлемент1 = СписокЭлементов1.СфокусированныйЭлемент; // Сообщить("СфокусированныйЭлемент1 = " + СфокусированныйЭлемент1); Если Не ("" + СфокусированныйЭлемент1 = "КлЭлементСпискаЭлементов") Тогда ВФокусе = "В фокусе: ничего нет"; // Ф.ОкноСообщений().Показать("В фокусе: ничего нет"); Иначе Подэлементы = СфокусированныйЭлемент1.Подэлементы; Колич2 = СписокЭлементов1.Колонки.Количество; Стр = ""; Для А2 = 0 По Колич2 - 1 Цикл Стр = Стр + " - " + Подэлементы.Элемент(А2).Текст; КонецЦикла; // Ф.ОкноСообщений().Показать("В фокусе: " + Стр, "В фокусе"); КонецЕсли; КонецФункции ПодключитьВнешнююКомпоненту("C:\444\111\OneScriptForms\OneScriptForms\bin\Debug\OneScriptForms.dll"); Ф = Новый ФормыДляОдноСкрипта(); Форма1 = Ф.Форма(); Форма1.Ширина = 700; Форма1.Отображать = Истина; Форма1.Показать(); Форма1.Активизировать(); Ф.РазрешитьСобытия = Истина; СписокЭлементов1 = Форма1.ЭлементыУправления.Добавить(Ф.СписокЭлементов()); СписокЭлементов1.Стыковка = Ф.СтильСтыковки.Лево; СписокЭлементов1.Ширина = Форма1.КлиентШирина - 130; СписокЭлементов1.РежимОтображения = Ф.РежимОтображения.Подробно; СписокЭлементов1.АвтоУпорядочивание = Истина; // подготовим мелкие значки СписокИзображений1 = Ф.СписокИзображений(); СписокИзображений1.РазмерИзображения = Ф.Размер(16, 16); СписокЭлементов1.СписокМаленькихИзображений = СписокИзображений1; СтрКартинка1 = "AAABAAEAEBAAAAEAIABoBAAAFgAAACgAAAAQAAAAIAAAAAEAIAAAAAAAQAQAAAAAAAAAAAAAAAAAAAAAAAD"; Для А = 1 По 1365 Цикл СтрКартинка1 = СтрКартинка1 + "/"; КонецЦикла; СтрКартинка1 = СтрКартинка1 + "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=="; СписокЭлементов1.ПриостановитьРазмещение(); Колонки1 = СписокЭлементов1.Колонки; Колонка1 = Ф.Колонка("Имя цвета", 250, Ф.ГоризонтальноеВыравнивание.Центр); Колонка1.ВыравниваниеТекста = Ф.ГоризонтальноеВыравнивание.Центр; Колонка1.Текст = "Имя цвета"; Колонка1.Ширина = Колонка1.Ширина + 10; Колонки1.Добавить(Колонка1); Колонки1.Добавить(Ф.Колонка("R", 40, 1)); Колонки1.Добавить(Ф.Колонка("G", 40, 1)); Колонки1.Добавить(Ф.Колонка("B", 40, 1)); Колонки1.Добавить(Ф.Колонка("Dec", 70, 1)); Колонки1.Добавить(Ф.Колонка("Hex", 70, 1)); М3 = РазобратьСтроку(Ф.СвойстваОбъекта(Ф.Цвет()), Символы.ПС); Для А = 0 По М3.ВГраница() Цикл Картинка1 = Ф.Картинка(СтрКартинка1); М4 = РазобратьСтроку(М3[А], " "); ИмяЦвета = М4[0]; Попытка Цв = Ф.Цвет().ИзИмени(ИмяЦвета); Исключение Продолжить; КонецПопытки; Dec = (Цв.ЗначениеКрасный * 65536) + (Цв.ЗначениеЗеленый * 256) + Цв.ЗначениеСиний; Hex = ИзDecВ_Hex(Dec); М_RGB = ИзHexВ_RGB(Hex); АтрибутыКартинки1 = Картинка1.Блокировать(); М1 = Картинка1.ПолучитьБайты(АтрибутыКартинки1); Если Картинка1.ФорматПикселей = Ф.ФорматПикселей.Бит32АКЗС Тогда А5 = 0; Пока А5 < М1.Количество Цикл М1.Установить(А5 + 0, Цв.ЗначениеСиний); М1.Установить(А5 + 1, Цв.ЗначениеЗеленый); М1.Установить(А5 + 2, Цв.ЗначениеКрасный); М1.Установить(А5 + 3, Цв.ЗначениеАльфа); А5 = А5 + 4; КонецЦикла; КонецЕсли; Картинка1.УстановитьБайты(АтрибутыКартинки1, М1); Картинка1.Разблокировать(АтрибутыКартинки1); СписокИзображений1.Изображения.Добавить(Картинка1); Элементы = СписокЭлементов1.Элементы; Элемент1 = Ф.ЭлементСпискаЭлементов(ИмяЦвета, СписокИзображений1.Изображения.Количество - 1); Элемент1.ИспользоватьСтильДляПодэлементов = Ложь; Элементы.Добавить(Элемент1); Подэлементы1 = Элемент1.Подэлементы; Подэлементы1.Добавить(Ф.ПодэлементСпискаЭлементов(М_RGB[0])); Подэлементы1.Добавить(Ф.ПодэлементСпискаЭлементов(М_RGB[1])); Подэлементы1.Добавить(Ф.ПодэлементСпискаЭлементов(М_RGB[2])); Подэлементы1.Добавить(Ф.ПодэлементСпискаЭлементов("" + Dec)); Подэлементы1.Добавить(Ф.ПодэлементСпискаЭлементов(Hex)); КонецЦикла; СписокЭлементов1.ВозобновитьРазмещение(); Кнопка1 = Форма1.ЭлементыУправления.ДобавитьКнопку(); Кнопка1.Текст = "Сообщить фокус"; Кнопка1.Лево = СписокЭлементов1.Лево + СписокЭлементов1.Ширина + 5; Кнопка1.Верх = СписокЭлементов1.Верх + 5; Кнопка1.Ширина = 122; Кнопка1.Высота = 53; Кнопка1.Нажатие = Ф.Действие(ЭтотОбъект, "СообщитьФокус"); Ф.ВызватьСобытие(Кнопка1, "Нажатие"); Сообщить(?( Не ВФокусе = "В фокусе: ничего нет" , "", "!!! ") + "СписокЭлементов.СфокусированныйЭлемент (ListView.FocusedItem) Свойство" + " " + ТекущаяДата());

Смотрите также

СписокЭлементов (ListView) Класс | Библиотека OneScriptForms