ЭлементУправления.НачатьОбновление (Control.BeginUpdate) Метод

Синтаксис

НачатьОбновление()

Параметры

Возвращаемое значение

Описание

Предотвращает прорисовку элемента управления до тех пор, пока не будет вызван метод ЗавершитьОбновление (EndUpdate).

Примечание

Важно: В системе отличной от семейства Windows вместо данного метода используйте метод ПриостановитьРазмещение (SuspendLayout).

Пример

СписокЭлементов2.НачатьОбновление();
Полный пример кода

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

Функция РазобратьСтроку(Строка, Разделитель) Стр = СтрЗаменить(Строка,Разделитель,символы.ПС); М = Новый Массив; Если ПустаяСтрока(Стр) Тогда Возврат М; КонецЕсли; Для Ч = 1 По СтрЧислоСтрок(Стр) Цикл М.Добавить(СтрПолучитьСтроку(Стр,Ч)); КонецЦикла; Возврат М; КонецФункции ПодключитьВнешнююКомпоненту("C:\444\111\OneScriptForms\OneScriptForms\bin\Debug\OneScriptForms.dll"); Ф = Новый ФормыДляОдноСкрипта(); Форма1 = Ф.Форма(); Форма1.Отображать = Истина; Форма1.Показать(); Форма1.Активизировать(); СписокЭлементов1 = Форма1.ЭлементыУправления.Добавить(Ф.СписокЭлементов()); СписокЭлементов1.Стыковка = Ф.СтильСтыковки.Заполнение; СписокЭлементов1.РежимОтображения = Ф.РежимОтображения.МаленькийЗначок; СписокЭлементов1.АвтоУпорядочивание = Истина; // подготовим мелкие значки СписокИзображений1 = Ф.СписокИзображений(); СписокИзображений1.РазмерИзображения = Ф.Размер(16, 16); СписокЭлементов1.СписокМаленькихИзображений = СписокИзображений1; СтрКартинка1 = "AAABAAEAEBAAAAEAIABoBAAAFgAAACgAAAAQAAAAIAAAAAEAIAAAAAAAQAQAAAAAAAAAAAAAAAAAAAAAAAD"; Для А = 1 По 1365 Цикл СтрКартинка1 = СтрКартинка1 + "/"; КонецЦикла; СтрКартинка1 = СтрКартинка1 + "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=="; СписокЭлементов1.НачатьОбновление(); Элементы1 = СписокЭлементов1.Элементы; М3 = РазобратьСтроку(Ф.СвойстваОбъекта(Ф.Цвет()), Символы.ПС); // Для А = 0 По М3.ВГраница() Цикл Для А = 0 По 20 Цикл Картинка1 = Ф.Картинка(СтрКартинка1); М4 = РазобратьСтроку(М3[А], " "); ИмяЦвета = М4[0]; Попытка Цв = Ф.Цвет(ИмяЦвета); Исключение Продолжить; КонецПопытки; Для А1 = 0 По Картинка1.Ширина - 1 Цикл Для А2 = 0 По Картинка1.Высота - 1 Цикл Картинка1.УстановитьПиксель(А1, А2, Ф.Цвет(ИмяЦвета)); КонецЦикла; КонецЦикла; СписокИзображений1.Изображения.Добавить(Картинка1); Элементы1.Добавить(Ф.ЭлементСпискаЭлементов(ИмяЦвета, (СписокИзображений1.Изображения.Количество - 1))); КонецЦикла; СписокЭлементов1.ЗавершитьОбновление(); Форма2 = Ф.Форма(); Форма2.Владелец = Форма1; Форма2.Отображать = Истина; Форма2.Показать(); Форма2.Активизировать(); СписокЭлементов2 = Форма2.ЭлементыУправления.Добавить(Ф.СписокЭлементов()); СписокЭлементов2.Стыковка = Ф.СтильСтыковки.Заполнение; СписокЭлементов2.РежимОтображения = Ф.РежимОтображения.БольшойЗначок; СписокЭлементов2.АвтоУпорядочивание = Истина; // подготовим крупные значки СписокИзображений2 = Ф.СписокИзображений(); СписокИзображений2.РазмерИзображения = Ф.Размер(48, 48); СписокЭлементов2.СписокБольшихИзображений = СписокИзображений2; СтрКартинка2 = "AAABAAEAMDAAAAEAIACoJQAAFgAAACgAAAAwAAAAYAAAAAEAIAAAAAAAgCUAAAAAAAAAAAAAAAAAAAAAAACZ////mf///5n///"; Для А = 1 По 767 Цикл СтрКартинка2 = СтрКартинка2 + "+Z////mf///5n///"; КонецЦикла; СтрКартинка2 = СтрКартинка2 + "8"; Для А = 1 По 520 Цикл СтрКартинка2 = СтрКартинка2 + "A"; КонецЦикла; СтрКартинка2 = СтрКартинка2 + "="; СписокЭлементов2.НачатьОбновление(); Элементы2 = СписокЭлементов2.Элементы; М3 = РазобратьСтроку(Ф.СвойстваОбъекта(Ф.Цвет()), Символы.ПС); // Для А = 0 По М3.ВГраница() Цикл Для А = 0 По 20 Цикл Картинка2 = Ф.Картинка(СтрКартинка2); М4 = РазобратьСтроку(М3[А], " "); ИмяЦвета = М4[0]; Попытка Цв = Ф.Цвет(ИмяЦвета); Исключение Продолжить; КонецПопытки; АтрибутыКартинки1 = Картинка2.Блокировать(); М1 = Картинка2.ПолучитьБайты(АтрибутыКартинки1); Если Картинка2.ФорматПикселей = Ф.ФорматПикселей.Бит32АКЗС Тогда А5 = 0; Пока А5 < М1.Количество Цикл М1.Установить(А5 + 0, Цв.ЗначениеСиний); М1.Установить(А5 + 1, Цв.ЗначениеЗеленый); М1.Установить(А5 + 2, Цв.ЗначениеКрасный); М1.Установить(А5 + 3, Цв.ЗначениеАльфа); А5 = А5 + 4; КонецЦикла; КонецЕсли; Картинка2.УстановитьБайты(АтрибутыКартинки1, М1); Картинка2.Разблокировать(АтрибутыКартинки1); СписокИзображений2.Изображения.Добавить(Картинка2); Элементы2.Добавить(Ф.ЭлементСпискаЭлементов(ИмяЦвета, (СписокИзображений2.Изображения.Количество - 1))); КонецЦикла; СписокЭлементов2.ЗавершитьОбновление(); Ф.ЗапуститьОбработкуСобытий();

Тестовый код

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

Функция РазобратьСтроку(Строка, Разделитель) Стр = СтрЗаменить(Строка,Разделитель,символы.ПС); М = Новый Массив; Если ПустаяСтрока(Стр) Тогда Возврат М; КонецЕсли; Для Ч = 1 По СтрЧислоСтрок(Стр) Цикл М.Добавить(СтрПолучитьСтроку(Стр,Ч)); КонецЦикла; Возврат М; КонецФункции ПодключитьВнешнююКомпоненту("C:\444\111\OneScriptForms\OneScriptForms\bin\Debug\OneScriptForms.dll"); Ф = Новый ФормыДляОдноСкрипта(); Форма1 = Ф.Форма(); Форма1.Отображать = Истина; Форма1.Показать(); Форма1.Активизировать(); СписокЭлементов1 = Форма1.ЭлементыУправления.Добавить(Ф.СписокЭлементов()); СписокЭлементов1.Стыковка = Ф.СтильСтыковки.Заполнение; СписокЭлементов1.РежимОтображения = Ф.РежимОтображения.МаленькийЗначок; СписокЭлементов1.АвтоУпорядочивание = Истина; // подготовим мелкие значки СписокИзображений1 = Ф.СписокИзображений(); СписокИзображений1.РазмерИзображения = Ф.Размер(16, 16); СписокЭлементов1.СписокМаленькихИзображений = СписокИзображений1; СтрКартинка1 = "AAABAAEAEBAAAAEAIABoBAAAFgAAACgAAAAQAAAAIAAAAAEAIAAAAAAAQAQAAAAAAAAAAAAAAAAAAAAAAAD"; Для А = 1 По 1365 Цикл СтрКартинка1 = СтрКартинка1 + "/"; КонецЦикла; СтрКартинка1 = СтрКартинка1 + "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=="; СписокЭлементов1.НачатьОбновление(); Элементы1 = СписокЭлементов1.Элементы; М3 = РазобратьСтроку(Ф.СвойстваОбъекта(Ф.Цвет()), Символы.ПС); // Для А = 0 По М3.ВГраница() Цикл Для А = 0 По 20 Цикл Картинка1 = Ф.Картинка(СтрКартинка1); М4 = РазобратьСтроку(М3[А], " "); ИмяЦвета = М4[0]; Попытка Цв = Ф.Цвет(ИмяЦвета); Исключение Продолжить; КонецПопытки; Для А1 = 0 По Картинка1.Ширина - 1 Цикл Для А2 = 0 По Картинка1.Высота - 1 Цикл Картинка1.УстановитьПиксель(А1, А2, Ф.Цвет(ИмяЦвета)); КонецЦикла; КонецЦикла; СписокИзображений1.Изображения.Добавить(Картинка1); Элементы1.Добавить(Ф.ЭлементСпискаЭлементов(ИмяЦвета, (СписокИзображений1.Изображения.Количество - 1))); КонецЦикла; СписокЭлементов1.ЗавершитьОбновление(); Форма2 = Ф.Форма(); Форма2.Владелец = Форма1; Форма2.Отображать = Истина; Форма2.Показать(); Форма2.Активизировать(); СписокЭлементов2 = Форма2.ЭлементыУправления.Добавить(Ф.СписокЭлементов()); СписокЭлементов2.Стыковка = Ф.СтильСтыковки.Заполнение; СписокЭлементов2.РежимОтображения = Ф.РежимОтображения.БольшойЗначок; СписокЭлементов2.АвтоУпорядочивание = Истина; // подготовим крупные значки СписокИзображений2 = Ф.СписокИзображений(); СписокИзображений2.РазмерИзображения = Ф.Размер(48, 48); СписокЭлементов2.СписокБольшихИзображений = СписокИзображений2; СтрКартинка2 = "AAABAAEAMDAAAAEAIACoJQAAFgAAACgAAAAwAAAAYAAAAAEAIAAAAAAAgCUAAAAAAAAAAAAAAAAAAAAAAACZ////mf///5n///"; Для А = 1 По 767 Цикл СтрКартинка2 = СтрКартинка2 + "+Z////mf///5n///"; КонецЦикла; СтрКартинка2 = СтрКартинка2 + "8"; Для А = 1 По 520 Цикл СтрКартинка2 = СтрКартинка2 + "A"; КонецЦикла; СтрКартинка2 = СтрКартинка2 + "="; СписокЭлементов2.НачатьОбновление(); Элементы2 = СписокЭлементов2.Элементы; М3 = РазобратьСтроку(Ф.СвойстваОбъекта(Ф.Цвет()), Символы.ПС); // Для А = 0 По М3.ВГраница() Цикл Для А = 0 По 20 Цикл Картинка2 = Ф.Картинка(СтрКартинка2); М4 = РазобратьСтроку(М3[А], " "); ИмяЦвета = М4[0]; Попытка Цв = Ф.Цвет(ИмяЦвета); Исключение Продолжить; КонецПопытки; АтрибутыКартинки1 = Картинка2.Блокировать(); М1 = Картинка2.ПолучитьБайты(АтрибутыКартинки1); Если Картинка2.ФорматПикселей = Ф.ФорматПикселей.Бит32АКЗС Тогда А5 = 0; Пока А5 < М1.Количество Цикл М1.Установить(А5 + 0, Цв.ЗначениеСиний); М1.Установить(А5 + 1, Цв.ЗначениеЗеленый); М1.Установить(А5 + 2, Цв.ЗначениеКрасный); М1.Установить(А5 + 3, Цв.ЗначениеАльфа); А5 = А5 + 4; КонецЦикла; КонецЕсли; Картинка2.УстановитьБайты(АтрибутыКартинки1, М1); Картинка2.Разблокировать(АтрибутыКартинки1); СписокИзображений2.Изображения.Добавить(Картинка2); Элементы2.Добавить(Ф.ЭлементСпискаЭлементов(ИмяЦвета, (СписокИзображений2.Изображения.Количество - 1))); КонецЦикла; СписокЭлементов2.ЗавершитьОбновление(); Сообщить(?( Истина , "", "!!! ") + "ЭлементУправления.НачатьОбновление (Control.BeginUpdate) Метод" + " " + ТекущаяДата());

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

ЭлементУправления (Control) Класс | Библиотека OneScriptForms