Copyright © 2010 Promsite. All Rights Reserved.
P  R  O  M  S  I  T  E
Статьи по 1С
стр. 2
стр. 2
4. Запуск нужной процедуры соответсвующей названию кнопки.

       Осталось немного.В свойствах основной кнопки на закладке Дополнительно в поле формула напишем:
ЗапускПроцедуры() и сформируем тело процедуры. Значит так, после установки заголовка кнопки, когда мы будем на ней кликать должна запустится соответствующая процедура. Например, заголовок Выход - запустится процедура Выход(). Т.к. к моменту запуска процедуры ЗапускПроцедуры() нам уже известен заголовок кнопки, осталось лишь проанализировать его.

Процедура ЗапускПроцедуры()
    Заг=Форма.Кнопка.Заголовок();//получим заголовок кнопки
    Если Заг="Удалить" Тогда
        Удалить();
    ИначеЕсли Заг="Добавить" Тогда
        Добавить();
    ИначеЕсли Заг="Очистить" Тогда
        Очистить();
    ИначеЕсли Заг="Просмотр" Тогда
        Просмотр();
    Иначе
        Выход();
    КонецЕсли;
КонецПроцедуры

Соберем все вместе:

Перем Сз;
Перем Поз;
Процедура Выход()
    Сообщить("Ура, вышли!");
КонецПроцедуры
//*******************************************
Процедура ПриВыборе()
    Сз.ВыбратьЗначение(,,Поз,,1);
    Если Поз=1 Тогда
        Форма.Кнопка.Заголовок(Сз.ПолучитьЗначение(1));
    ИначеЕсли Поз=2 Тогда
        Форма.Кнопка.Заголовок(Сз.ПолучитьЗначение(2));
    ИначеЕсли Поз=3 Тогда
        Форма.Кнопка.Заголовок(Сз.ПолучитьЗначение(3));
    ИначеЕсли Поз=4 Тогда
        Форма.Кнопка.Заголовок(Сз.ПолучитьЗначение(4));
    Иначе
        Форма.Кнопка.Заголовок(Сз.ПолучитьЗначение(5));
    КонецЕсли;
КонецПроцедуры
//******************************************************************************
Процедура ЗапускПроцедуры()
    Заг=Форма.Кнопка.Заголовок();
    Если Заг="Удалить" Тогда
        // Удалить();//рэмы потому что таких процедур пока нет.
    ИначеЕсли Заг="Добавить" Тогда
        // Добавить();
    ИначеЕсли Заг="Очистить" Тогда
        // Очистить();
    ИначеЕсли Заг="Просмотр" Тогда
        // Просмотр();
    Иначе
        Выход();
    КонецЕсли;
КонецПроцедуры
//*********************************************************
Сз=СоздатьОбъект("СписокЗначений");
Сз.ДобавитьЗначение("Удалить");
Сз.ДобавитьЗначение("Добавить");
Сз.ДобавитьЗначение("Очистить");
Сз.ДобавитьЗначение("Просмотр");
Сз.ДобавитьЗначение("Выход");

    Если в свойствах кнопки Действие на закладке Дополнительно в поле формула написать: ПриВыборе();ЗапускПроцедуры() - то можно обойтись и без маленькой кнопки. В этом случае запуск нужной процедуры осуществляется одновременно с выбором заголовка. Но это кому как удобно.
    Кроме того, чтобы не видеть при запуске безликий заголовок Действие, лучше установить наиболее часто употребляемый, например Просмотр. Для этого в разделе инициализации, в самом конце, дописываем:Форма.Кнопка.Заголовок(Сз.ПолучитьЗначение(4));



страницы: 1   2
страницы: 1   2

Для отображения Облака ссылок
необходим
Adobe Flash Player 9
или выше.