RosettaCodeData/Task/GUI-component-interaction/1C/gui-component-interaction.1c

59 lines
2.7 KiB
Plaintext

&НаСервере
Процедура ДобавитьЭлементы()
КЧ = Новый КвалификаторыЧисла(12,2);
Массив = Новый Массив;
Массив.Добавить(Тип("Число"));
ОписаниеТиповЧ = Новый ОписаниеТипов(Массив, , ,КЧ);
НовыйРеквизит = Новый РеквизитФормы("ВводимоеЧисло", Новый ОписаниеТипов(Массив, , ,КЧ));;
МассивР = Новый Массив;
МассивР.Добавить(НовыйРеквизит);
ИзменитьРеквизиты(МассивР);
ПолеВвода = Элементы.Добавить("ПолеВвода", Тип("ПолеФормы"));
ПолеВвода.ПутьКДанным = "ВводимоеЧисло";
ПолеВвода.вид = ВидПоляФормы.ПолеВвода;
КомандаИнкримент = Команды.Добавить("Инкримент");
КомандаРандом = КОманды.Добавить("Рандом");
КнопкаИнкримент = Элементы.Добавить("КнопкаИнкримент", Тип("КнопкаФормы"));
КнопкаИнкримент.ИмяКоманды = "Инкримент";
КнопкаРандом = Элементы.Добавить("КнопкаРандом", Тип("КнопкаФормы"));
КнопкаРандом.ИмяКоманды = "Рандом";
КомандаИнкримент.Действие = "Инкримент";
КомандаРандом.Действие = "Рандом";
КонецПроцедуры
&НаКлиенте
Процедура Инкримент(Команда)
ЭтотОбъект.ВводимоеЧисло = ЭтотОбъект.ВводимоеЧисло + 1;
КонецПроцедуры
&НаКлиенте
Процедура Рандом(Команда)
ОписаниеОповещения = Новый ОписаниеОповещения("РандомПослеВыбора", ЭтотОбъект);
ПоказатьВопрос(ОписаниеОповещения, "Установить случайное число?", РежимДиалогаВопрос.ДаНет);
КонецПроцедуры
&НаКлиенте
Процедура РандомПослеВыбора(РезультатВопроса, ДополнительныеПараметры) Экспорт
Если РезультатВопроса = КодВозвратаДиалога.Да Тогда
ГСЧ = Новый ГенераторСлучайныхЧисел();
ЭтотОбъект.ВводимоеЧисло = ГСЧ.СлучайноеЧисло(0, 999999);
КонецЕсли;
КонецПроцедуры