Перейти к содержимому





- - - - -

Кнопка

Опубликовал: Иксилимьюз, 16 Июль 2013 · 1 332 Просмотров

Утро, хорошее настроение. Заходит коллега
- Ага, они уже во всю трудятся, уже сгенерировали тонны кода и килограммы форм!
- Угу..
- Вот ты, Женька, сколько кнопок создал с утра?
- Я то? Ни сколько!
- А сможешь создать кнопку программно?
Я в раздумьях, так-то создать кнопку программно не проблема когда речь о Delphi или C#, но в 1Ске никогда не делал подобного.Тем не менее мои мысли сводят меня к ответу "Да".
- Да.
- Ну до 9 часов ещё 20 минут, время пошло :)

И тут клавиатура затрещала ). До 9 часов конечно не успел, чуток вышел за рамки установленного срока, но это уже из-за выпендрежа) Не хотелось голую кнопку создавать, без обработчика событий)

И вот что интересно. Я первым делом пошел по пути старых инстинктов)
Что-то вроде
НашаКнопка = Новый Кнопка;
...
Но потом понял что нет возможность родителя задать(на чем будет распологаться). Думаю. Гуглю. Ага! Оказывается есть метод Добавить у списка ЭлементовФормы. Тут пошло проще.. Но потом снова я подумал что свойство "ИсточникДействий" у созданной кнопки есть свойство хранящее процедуру.. И пытался как и в Дельфи присвоить этому свойству процедуру) Напрямую) Но облом. Так нельзя..
И лишь затем нашел ещё один метод "УстановитьДействие" ) Вот тогда все заработало) Ах это чувство) Некое проявление азарта и интузиазма и ... не знаю как описать)

В общем если кому интересно код получился такой:



Процедура ПриОткрытии()
НашаКнопка = ЭтаФорма.ЭлементыФормы.Добавить(Тип("Кнопка"),"НашаКнопка",Истина);
НашаКнопка.Заголовок = "Йа Кнопко";
НашаКнопка.ЦветФонаКнопки = WebЦвета.Красный;
НашаКнопка.ЦветТекстаКнопки = WebЦвета.Зеленый;
НашаКнопка.Верх = 25;
НашаКнопка.Лево = 15;
НашаКнопка.Высота = 30;
НашаКнопка.Ширина = 70;
Событие = Новый Действие("НашаКнопкаНажатие");
НашаКнопка.УстановитьДействие("Нажатие",Событие);
КонецПроцедуры

Процедура НашаКнопкаНажатие(Элемент)
Сообщить("Я кнопко! Йа работаю!");
КонецПроцедуры



  • 0


господи, какая жесть все-таки код на русском! я хочу это развидеть :faceoff:

а с другой стороны всякие буржуи так ведь все и видят.. бедолаги
    • 2
Да, после долгой практики написания кода на английском, такой код воспринимается не сразу и в легкую) Но постепенно привыкаешь))
Тоже многократно думал о том что я теперь как буржуй)) На каком языке говорю, на таком и код пишу))

Но на самом деле, жесть это не код на русском) Жесть это спаренные операторы и идентификаторы, такие как ЕстьNull или тот же WebЦвета :)
    • 1

ЕстьNull

ну уж перевели бы всё, что естьнул что естьпусто, один ведь фиг...
какая у буржуев программа вместо 1с?
    • 0
1Сники (производители) видимо решили что ЕстьNull красивше выглядит ))

Да у буржуев любой язык программирования как 1С) Имеется ввиду что они говорят на английском языке. И любые операторы\команды\идентификаторы в любом языке программирования (java, c++, delphi, python, php...) строятся тоже на английском языке.

Следовательно то что мы видим в 1С

Выбрать * из Справочник.Контрагенты

буржуи точно так же видят все остальное. например:

select * from customers

    • 0

Поиск по блогу

Ноябрь 2024

П В С Ч П С В
    123
45678910
11121314151617
18 19 2021222324
252627282930 

пользователей просматривает

0 пользователей, 8 неизвестных прохожих, 0 скрытых пользователей

Размещение рекламы на сайте     Предложения о сотрудничестве     Служба поддержки пользователей

© 2011-2022 vse.kz. При любом использовании материалов Форума ссылка на vse.kz обязательна.