Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.10.29;
Скачать: CL | DM;

Вниз

СтОит ли облегчать конструкцию.   Найти похожие ветки 

 
AntiUser ©   (2006-10-10 18:58) [0]

Т.е. бить на процедуры. С учетом того, что ни одна процедура не будет вызываться более одного раза и именно из той из которой буду бить.

procedure Tfrm_Main.dxSideBarChangeSelectedItem(Sender: TObject);
begin
 case dxSideBar.ActiveGroupIndex of
   0:
     begin
       case dxSideBar.SelectedItem.Index of
         0:
           begin

           end;
         1:
           begin

           end;
       end;
     end;
   1:
     begin
       case dxSideBar.SelectedItem.Index of
         0:
           begin

           end;
         1:
           begin

           end;
         2:
           begin

           end;
       end;
     end
 end;
end;

Или я наверное не очень ясно выразился?


 
Ketmar ©   (2006-10-10 19:09) [1]

зависит от сложности кода в операторных скобках.


 
Gero ©   (2006-10-10 19:13) [2]

> [0] AntiUser ©   (10.10.06 18:58)

Зачем лишниу begin...end? Они только усложняют конструкцию.


 
default ©   (2006-10-10 19:16) [3]

покажи код


 
Eraser ©   (2006-10-10 19:17) [4]

> [0] AntiUser ©   (10.10.06 18:58)

по-сабжу - согласен с [1].
но если бить, то так:

procedure Tfrm_Main.dxSideBarChangeSelectedItem(Sender: TObject);
 procedure Case0;
 begin
   case dxSideBar.SelectedItem.Index of
    0:
      begin

      end;
    1:
      begin

      end;
   end;
 end;

 procedure Case1;
 begin
   case dxSideBar.SelectedItem.Index of
    0:
      begin

      end;
    1:
      begin

      end;
    2:
      begin

      end;
   end;
 end;

begin
 case dxSideBar.ActiveGroupIndex of
  0:
    begin
      Case0;
    end;
  1:
    begin
      Case1;
    end
 end;
end;


 
Ketmar ©   (2006-10-10 19:19) [5]

а ещё можно сделать массив обработчиков и вызывать их одним оператором. а можно и другие варианты. всё зависит от конкретного кода. %-)


 
Kolan ©   (2006-10-10 19:32) [6]


> не будет вызываться более одного раза

Бить в любом(почти) случае. Даже если там всего 1 строчка будет.


 
Gero ©   (2006-10-10 19:33) [7]

> [4] Eraser ©   (10.10.06 19:17)

Мне кажется, что лучше дать нормальные имена, раскрывающие предназначение той или иной функции.


 
Gero ©   (2006-10-10 19:33) [8]

> [6] Kolan ©   (10.10.06 19:32)

Зачем бить, если одна строчка?


 
AntiUser ©   (2006-10-10 19:38) [9]

Конкретного кода нет, нахожусь в стадии проектирования, даже не уверен сколько будет групп и итемов в них, но в обработчике каждого кейса (итема) будет точно две строки. Некая активация и вызов процедуры, которая уже и будет заниматься действиями связанными с выводом данных.


 
Eraser ©   (2006-10-10 19:41) [10]

> [7] Gero ©   (10.10.06 19:33)

это само собой, но для этого надо знать

> предназначение той или иной функции.

я просто продемонстрировал одни из удобных подходов, про который частенько забывают.


 
Gero ©   (2006-10-10 19:45) [11]

> [9] AntiUser ©   (10.10.06 19:38)

Тогда заморачиваться не стоит, будет хорошо и так.



Страницы: 1 вся ветка

Текущий архив: 2006.10.29;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.03 c
15-1160057772
ArtemESC
2006-10-05 18:16
2006.10.29
Работа...


4-1150136401
redlord
2006-06-12 22:20
2006.10.29
перехват сообщений чужого окна


15-1160032899
Kolan
2006-10-05 11:21
2006.10.29
Как по английски "программатор"?


2-1160741232
AlexanderMS
2006-10-13 16:07
2006.10.29
Обнаружение русской версии Windows.


2-1160866245
Павел_84
2006-10-15 02:50
2006.10.29
Работа с ресурсным файлом