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

Присвоение значения свойства группе объектов   Найти похожие ветки 

← →
ГореПрограммер   (2006-09-28 10:02) [0]

Здравствуйте.
Задача в следующем:
необходимо предположим присвоить значение false свойству enabled группе объектов (в частности пунктам меню) возможно ли сделать это способом, отличным от простого перечисления:
n1.enabled:=false;
n2.enabled:=false;
n3.enabled:=false
.....

и если можно, то как ?


← →
Ketmar ©   (2006-09-28 10:05) [1]

Controls[], F1.


← →
clickmaker ©   (2006-09-28 10:06) [2]

Menu.Items[]


← →
ГореПрограммер   (2006-09-28 10:07) [3]

Ketmar
если честно не увидел в справке каким образом реализовать мою задачу. Безусловно понимаю, что глаза плохие, но подскажите как ?


← →
ГореПрограммер   (2006-09-28 10:08) [4]

clickmaker
а каким образом с помощью meu.items[] обратиться к нескольким елементам ?


← →
Ketmar ©   (2006-09-28 10:09) [5]

"в частности" -- см. [2].
в общем -- [3].
что ж тут неясного? бежим в цикле по всем контролам, те, которые нам нужны -- обрабатываем. остальные -- пропускаем.


← →
ГореПрограммер   (2006-09-28 10:10) [6]

Ketmar
а чем это будет отличаться от простого перечисления ?


← →
clickmaker ©   (2006-09-28 10:21) [7]


> [6] ГореПрограммер   (28.09.06 10:10)

ничем
Ну нету в дельфи такого понятия "группа объектов", чтоб можно было свойства махом менять.
Не устраивает - напиши класс, в котором реализуешь перечисление


← →
ГореПрограммер   (2006-09-28 10:22) [8]

clickmaker
вот теперь все ясно, спасибо.


← →
MsGuns ©   (2006-09-28 12:31) [9]

Обычно грамотно разработанный интерфейс представляет собою сгруппированные нужным (удобным, семантически близким и т.д.) образов внутри контейнеров: TPanel, TGroupBox ...
Для гибкого или контекстного управления такими контролами можно использовать общую процедуру, переключающую либо все, либо указанные некоторым образом контролы в "активное", "пассивное" либо какие-то другие состояния.
Процедура получает на входе указатель на TWinControl, служащий контрейнером (св-во Parent находящихся на нем компонент указывает на него) для визуальных контролов, "флаг" состояния и еще некоторые параметры, например, фонт, цвет и т.д. Процедура, перебирая "свои" контролы, (как справедливо указано в [1]), "ищет" у каждого соответствующее св-во (например, Enabled, Visible или Color, Font) и, если находит, присваивает ему переданное вх.параметром св-во в соответствии с "флагом".
Такая технология не только существенно повышает эффективность программинга, сокращая его сроки и повышая надежность и "объектонезависимость" кода, но и делает исходный текст кратким и наглядным.



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

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



Память: 0.47 MB
Время: 0.034 c
4-1148996843
liavik
2006-05-30 17:47
2006.10.15
Позиии приложений


5-1141105299
MiHoY
2006-02-28 08:41
2006.10.15
idDecoderMIME


2-1159540488
Весь в делах
2006-09-29 18:34
2006.10.15
Иконки


15-1158733343
ПЛОВ
2006-09-20 10:22
2006.10.15
Все восточном календаре


2-1159423777
vodvorezlaya
2006-09-28 10:09
2006.10.15
Прочитал мануал и не могу понять что за оператор "as" и зачем он.




   Наверх