Таблица.ЯчейкаИзменена (TableView.SelectedCellChanged) Событие

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

Чтение и запись.

Значение

Тип: Действие (Action).

Возвращает или задает код для события при изменении выбранной ячейки в таблице.

Примечание

Аргументы события

НоваяКолонка (NewCol) Возвращает индекс новой колонки.
НоваяСтрока (NewRow) Возвращает индекс новой строки.
Отправитель (Sender) Возвращает источник (объект) последнего события.
Параметр (Parameter) Возвращает объект, заданный при установке обработчика события, для передачи в обработчик события.
СтараяКолонка (OldCol) Возвращает индекс старой колонки.
СтараяСтрока (OldRow) Возвращает индекс старой строки.
ТаблицаДанных (DataTable) Возвращает таблицу данных (источник) для редактируемой ячейки.

Пример

Таблица1.ЯчейкаИзменена = ТФ.Действие(ЭтотОбъект, "ЯчейкаИзменена");
Полный пример кода


Перем ТФ, Таблица1; Процедура ПриОткрытии() Экспорт ТФ.Верхний.Текст = "Перейдите в другую ячейку с помощью клавиш"; ТФ.ТаймерНачатьИОстановить(ЭтотОбъект, "ТаймерТик"); КонецПроцедуры Процедура ЯчейкаИзменена() Экспорт АргументыСобытия = ТФ.АргументыСобытия; Текст = "ЯчейкаИзменена = " + ТекущаяУниверсальнаяДатаВМиллисекундах() + " |Отправитель = " + АргументыСобытия.Отправитель + " |НоваяКолонка = " + АргументыСобытия.НоваяКолонка + " |СтараяКолонка = " + АргументыСобытия.СтараяКолонка + " |НоваяСтрока = " + АргументыСобытия.НоваяСтрока + " |СтараяСтрока = " + АргументыСобытия.СтараяСтрока + " |ТаблицаДанных = " + АргументыСобытия.ТаблицаДанных + " |"; ТФ.Уведомление().Показать("" + Текст, -1); КонецПроцедуры Процедура ТаймерТик() Экспорт Таблица1.УстановитьВыделение(1, 1, Ложь); КонецПроцедуры ПодключитьВнешнююКомпоненту("C:\444\111\OneScriptTerminalGui\OneScriptTerminalGui\bin\Debug\OneScriptTerminalGui.dll"); ТФ = Новый ТерминалФормыДляОдноСкрипта(); Таблица1 = ТФ.Верхний.Добавить(ТФ.Таблица(0, 3)); Таблица1.Ширина = ТФ.Величина.Процент(80); Таблица1.Высота = ТФ.Величина.Процент(90); ТаблицаДанных1 = ТФ.ТаблицаДанных(); КолонкиТаб = ТаблицаДанных1.Колонки; Колонка0 = КолонкиТаб.Добавить(ТФ.КолонкаДанных("№ н/п", ТФ.ТипДанных.Число)); Колонка1 = КолонкиТаб.Добавить(ТФ.КолонкаДанных("ФИО", ТФ.ТипДанных.Строка)); Колонка2 = КолонкиТаб.Добавить(ТФ.КолонкаДанных("ДатаРождения", ТФ.ТипДанных.Дата)); Колонка3 = КолонкиТаб.Добавить(ТФ.КолонкаДанных("Высшее образование", ТФ.ТипДанных.Булево)); Колонка4 = КолонкиТаб.Добавить(ТФ.КолонкаДанных("Рейтинг", ТФ.ТипДанных.Число)); Колонка5 = КолонкиТаб.Добавить(ТФ.КолонкаДанных("Инкремент", ТФ.ТипДанных.Число)); Колонка5.АвтоПриращение = Истина; Колонка5.НачальноеЧисло = 25; Колонка5.ШагПриращения = 5; Стр13 = "Трифонов Юрий Никифорович,19990607,Истина,61.80 |Шигаев Агап Денисович,19991001,Ложь,48.99 |Сочеванова Анфиса Георгиевна,19970909,Истина,31.08 |Врунгель Христофор Бонифатьевич,19901010,Истина,53.22 |Шикалов Игнатий Маркович,19901010,Истина,53.22 |Сергеевич Аристарх Изяславович,19950621,Ложь,25.97 |Бондарчук Александр Ермолаевич,19930713,Истина,89.53 |Ефремова Ева Степановна,19990105,Ложь,12.11 |Моисеева Зинаида Никитевна,19930616,Истина,33.66 |Кузьмова Лиана Игнатиевна,19930621,Ложь,40.70"; Для А = 1 По СтрЧислоСтрок(Стр13) Цикл ТаблицаДанных1.Строки.Добавить(ТаблицаДанных1.НоваяСтрока()); КонецЦикла; М_Счетчик = Новый Массив(); М_ФИО = Новый Массив(); М_ДатаРождения = Новый Массив(); М_ВысшееОбразование = Новый Массив(); М_КоличествоБонусов = Новый Массив(); Для А = 1 По СтрЧислоСтрок(Стр13) Цикл Стр14 = СтрПолучитьСтроку(Стр13, А); М9 = ТФ.РазобратьСтроку(Стр14, ","); М_Счетчик.Добавить(А); М_ФИО.Добавить(М9[0]); М_ДатаРождения.Добавить(Дата("" + М9[1])); М_ВысшееОбразование.Добавить(?(М9[2] = "Истина", Истина, Ложь)); М_КоличествоБонусов.Добавить(Число(М9[3])); КонецЦикла; ТаблицаДанных1.ЗагрузитьКолонку(М_Счетчик, 0); ТаблицаДанных1.ЗагрузитьКолонку(М_ФИО, 1); ТаблицаДанных1.ЗагрузитьКолонку(М_ДатаРождения, "ДатаРождения"); ТаблицаДанных1.ЗагрузитьКолонку(М_ВысшееОбразование, Колонка3); ТаблицаДанных1.ЗагрузитьКолонку(М_КоличествоБонусов, Колонка4); Таблица1.ТаблицаДанных = ТаблицаДанных1; СтильТаблицы1 = ТФ.СтильТаблицы(); СтильТаблицы1.ЛинияМеждуЯчейками = Истина; Таблица1.СтильТаблицы = СтильТаблицы1; СтильКолонки1 = ТФ.СтильКолонки(); СтильКолонки1.ВыравниваниеТекста = ТФ.ВыравниваниеТекста.Центр; СтилиКолонки1 = ТФ.СтилиКолонки(); СтилиКолонки1.Добавить(Колонка3, СтильКолонки1); СтильТаблицы1.СтилиКолонки = СтилиКолонки1; Таблица1.ЯчейкаИзменена = ТФ.Действие(ЭтотОбъект, "ЯчейкаИзменена"); ТФ.ПриОткрытии = ТФ.Действие(ЭтотОбъект, "ПриОткрытии"); ТФ.Запуск();

Тестовый код


Перем ТФ, Таблица1, Отправитель; Процедура ПриОткрытии() Экспорт ТФ.Верхний.Текст = "Перейдите в другую ячейку с помощью клавиш"; ТФ.ТаймерНачатьИОстановить(ЭтотОбъект, "ТаймерТик"); КонецПроцедуры Процедура ЯчейкаИзменена() Экспорт АргументыСобытия = ТФ.АргументыСобытия; Текст = "ЯчейкаИзменена = " + ТекущаяУниверсальнаяДатаВМиллисекундах() + " |Отправитель = " + АргументыСобытия.Отправитель + " |НоваяКолонка = " + АргументыСобытия.НоваяКолонка + " |СтараяКолонка = " + АргументыСобытия.СтараяКолонка + " |НоваяСтрока = " + АргументыСобытия.НоваяСтрока + " |СтараяСтрока = " + АргументыСобытия.СтараяСтрока + " |ТаблицаДанных = " + АргументыСобытия.ТаблицаДанных + " |"; ТФ.Уведомление().Показать("" + Текст, -1); Отправитель = АргументыСобытия.Отправитель; КонецПроцедуры Процедура ТаймерТик() Экспорт Таблица1.УстановитьВыделение(1, 1, Ложь); ТФ.ТаймерНачатьИОстановить(ЭтотОбъект, "ТаймерТик1"); КонецПроцедуры Процедура ТаймерТик1() Экспорт ТФ.Завершить(); КонецПроцедуры ПодключитьВнешнююКомпоненту("C:\444\111\OneScriptTerminalGui\OneScriptTerminalGui\bin\Debug\OneScriptTerminalGui.dll"); ТФ = Новый ТерминалФормыДляОдноСкрипта(); Таблица1 = ТФ.Верхний.Добавить(ТФ.Таблица(0, 3)); Таблица1.Ширина = ТФ.Величина.Процент(80); Таблица1.Высота = ТФ.Величина.Процент(90); ТаблицаДанных1 = ТФ.ТаблицаДанных(); КолонкиТаб = ТаблицаДанных1.Колонки; Колонка0 = КолонкиТаб.Добавить(ТФ.КолонкаДанных("№ н/п", ТФ.ТипДанных.Число)); Колонка1 = КолонкиТаб.Добавить(ТФ.КолонкаДанных("ФИО", ТФ.ТипДанных.Строка)); Колонка2 = КолонкиТаб.Добавить(ТФ.КолонкаДанных("ДатаРождения", ТФ.ТипДанных.Дата)); Колонка3 = КолонкиТаб.Добавить(ТФ.КолонкаДанных("Высшее образование", ТФ.ТипДанных.Булево)); Колонка4 = КолонкиТаб.Добавить(ТФ.КолонкаДанных("Рейтинг", ТФ.ТипДанных.Число)); Колонка5 = КолонкиТаб.Добавить(ТФ.КолонкаДанных("Инкремент", ТФ.ТипДанных.Число)); Колонка5.АвтоПриращение = Истина; Колонка5.НачальноеЧисло = 25; Колонка5.ШагПриращения = 5; Стр13 = "Трифонов Юрий Никифорович,19990607,Истина,61.80 |Шигаев Агап Денисович,19991001,Ложь,48.99 |Сочеванова Анфиса Георгиевна,19970909,Истина,31.08 |Врунгель Христофор Бонифатьевич,19901010,Истина,53.22 |Шикалов Игнатий Маркович,19901010,Истина,53.22 |Сергеевич Аристарх Изяславович,19950621,Ложь,25.97 |Бондарчук Александр Ермолаевич,19930713,Истина,89.53 |Ефремова Ева Степановна,19990105,Ложь,12.11 |Моисеева Зинаида Никитевна,19930616,Истина,33.66 |Кузьмова Лиана Игнатиевна,19930621,Ложь,40.70"; Для А = 1 По СтрЧислоСтрок(Стр13) Цикл ТаблицаДанных1.Строки.Добавить(ТаблицаДанных1.НоваяСтрока()); КонецЦикла; М_Счетчик = Новый Массив(); М_ФИО = Новый Массив(); М_ДатаРождения = Новый Массив(); М_ВысшееОбразование = Новый Массив(); М_КоличествоБонусов = Новый Массив(); Для А = 1 По СтрЧислоСтрок(Стр13) Цикл Стр14 = СтрПолучитьСтроку(Стр13, А); М9 = ТФ.РазобратьСтроку(Стр14, ","); М_Счетчик.Добавить(А); М_ФИО.Добавить(М9[0]); М_ДатаРождения.Добавить(Дата("" + М9[1])); М_ВысшееОбразование.Добавить(?(М9[2] = "Истина", Истина, Ложь)); М_КоличествоБонусов.Добавить(Число(М9[3])); КонецЦикла; ТаблицаДанных1.ЗагрузитьКолонку(М_Счетчик, 0); ТаблицаДанных1.ЗагрузитьКолонку(М_ФИО, 1); ТаблицаДанных1.ЗагрузитьКолонку(М_ДатаРождения, "ДатаРождения"); ТаблицаДанных1.ЗагрузитьКолонку(М_ВысшееОбразование, Колонка3); ТаблицаДанных1.ЗагрузитьКолонку(М_КоличествоБонусов, Колонка4); Таблица1.ТаблицаДанных = ТаблицаДанных1; СтильТаблицы1 = ТФ.СтильТаблицы(); СтильТаблицы1.ЛинияМеждуЯчейками = Истина; Таблица1.СтильТаблицы = СтильТаблицы1; СтильКолонки1 = ТФ.СтильКолонки(); СтильКолонки1.ВыравниваниеТекста = ТФ.ВыравниваниеТекста.Центр; СтилиКолонки1 = ТФ.СтилиКолонки(); СтилиКолонки1.Добавить(Колонка3, СтильКолонки1); СтильТаблицы1.СтилиКолонки = СтилиКолонки1; Таблица1.ЯчейкаИзменена = ТФ.Действие(ЭтотОбъект, "ЯчейкаИзменена"); ТФ.ПриОткрытии = ТФ.Действие(ЭтотОбъект, "ПриОткрытии"); ТФ.Запуск(); Сообщить(?( ТипЗнч(Отправитель) = Тип("ТфТаблица") , "", "!!! ") + "Таблица.ЯчейкаИзменена (TableView.SelectedCellChanged) Событие" + " " + ТекущаяДата() + Символы.ПС);

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

Библиотека OneScriptTerminalGui