Вниз
Скачать: CL | DM;

Какой способ самый оптимальный?   Найти похожие ветки 

 
Igor_thief ©   (2004-02-21 11:08) [0]

Задача: есть форма на которой «лежат» 2 ListBox и 6 Button’ов(по три для каждого листбоха). При работе программы надо делать эти кнопки доступными (enabled) или не доступными в зависимости от обстоятельств. Вот мы и подошли к способам.
Первый: можно написать процедуру, в которой проверять все обстоятельства и как результат делать нужные кнопки Enabled = true.
Второй: к каждой кнопке привязать Action и в OnActionUpdate проверять условие которое интересует только эту кнопку и устанавливать кнопке нужный статус.
В первом случае мы просто выполняем лишние проверки, например: выделен элемент первого листбокса и соответственно надо работать только с двумя кнопками относящимися к первому листбоху и одной ко второму, а не всеми 6, но в процедуре проверяются все обстоятельства.
Во втором случае Update работает как таймер и выполняет проверку нужных кнопок постоянно, плюс код загромождается 6-ю (ну или немного меньше) процедурами Update.


 
Никто   (2004-02-21 17:56) [1]

Привяжи OnUpdate всех Action"ов к одному методу.


 
Igor_thief ©   (2004-02-21 18:09) [2]

Никто   (21.02.04 17:56) [1]
Дело не в том, сколько чего к чему превязать. Дело в том, чтобы определить какой метод оптимальней по всем параметрам.


 
Гаврила   (2004-02-21 18:34) [3]

я пишу обычно по варианту 1
быстродействие от этого ощутимо не меняется, а код менее загроможден


 
DiamondShark ©   (2004-02-21 18:42) [4]

А почему бы TActionList.OnUpdate не использовать?


 
Igor_thief ©   (2004-02-25 14:17) [5]

DiamondShark ©   (21.02.04 18:42) [4]
А как тебе нравиться отлаживать прогу при использывании OnUpdate?



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

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.02 c
1-1078842060
VLAD-MAL
2004-03-09 17:21
2004.03.28
Project manager - сортировка модулей по алфавиту?


1-1078836392
hexone
2004-03-09 15:46
2004.03.28
Функция Move из system.pas


3-1074854174
VolanD2002
2004-01-23 13:36
2004.03.28
DBGrid


14-1077646685
Gero
2004-02-24 21:18
2004.03.28
Вечный вопрос: Выбор ОС (Навеяно очередным BSOD ом)


6-1073999614
Bart
2004-01-13 16:13
2004.03.28
idHTTP using proxy connect




   Наверх