Показать сообщение отдельно
Старый 27.06.2008, 11:01   #1  
Андрей К. is offline
Андрей К.
Постигающий
 
152 / 10 (1) +
Регистрация: 09.04.2007
Очистить все контролы
Добрый день..
есть у меня сложная форма с множеством групп, подгрупп и полями в них.
нужно сделать кнопку по нажатию на которую все поля будут очищаться.
не понятно , как мне добраться до каждого из полей дизайна?

пробовал вот так :
X++:
    Object                  currentContainer;
    Object                  ctrl;
    int                     numc;
    int                    f;
    int                    i, j;
    FormControl fc;
    FormStringControl     sc;
    ;
    i = fieldTab.controlCount();// fieldTab - вкладка с группами, в которых все нужные поля

    for (j=1; j<=i; j++)
    {
       fc = fieldTab.controlNum(j);
       if (SysdictClass::isEqualOrSuperClass(classidget(fc),classNum(FormGroupControl)))
       {
                currentContainer = form.design().control(fc.id());
                numc = currentContainer.controlCount();

                for (f = 1; f <= numc; f++)
                {
                    ctrl = currentContainer.controlNum(f);
                    if (SysdictClass::isEqualOrSuperClass(classidget(ctrl),classNum(FormBuildStringControl)))
                    {
                         sc = ctrl;
                         sc.text("");
                    }
                }

       }

    }
- ничего не чистится (

Последний раз редактировалось Андрей К.; 27.06.2008 в 11:06.