Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Процедура(функция) [D5, Win2k]


Ал ©   (2002-06-27 18:02:00) 

Уважаемые мастера!
Ответьте, пожалуйста, пользователю на тривиальный для
Вас вопрос. На форме группа кнопок (TButton).
В различных случаях всю группу нужно
делать недоступной. Так вот чтобы при каждом
обработчике не писать:
begin
……………………….. // одна из процедур обработки события
Button1.Enabled:=false; // один и тот же текст
Button2.Enabled:=false;
………………………..
Button20.Enabled:=false;
end
Как написать процедуру(функцию)?
Пожалуйста, ПОМОГИТЕ.
С уважением, Александр.


Stelius   (2002-06-28 00:56:00) [1]

Для всех компонентов на форме:

for i := 0 to Form1.ControlCount - 1 do
Form1.Controls[i].Enabled := False;


Ал   (2002-06-27 23:04:00) [2]

А как описать общую процедуру
для всех кнопок, доступную
для разных компонентов формы?
Спасибо!


Victor_Kozel   (2002-06-27 19:00:00) [3]

Для VCL это должно выглядеть где-то так
Всем кнопкам назначь свой TAction.
У него есть событие OnUpdate.
Назначь для всех соответствующих Action
один обработчик с примерно таким кодом.

procedure TForm1.acTestActionUpdate(Sender: TObject);
begin
TAction(Sender).Enabled := условие;
end;

Это тебе позволит дизейблить не только кнопки на панели, но и
пункты меню, как главного так и PopUp в одной точке кода


Volj   (2002-06-27 18:28:00) [4]

А еще проще поместить группу кнопок на одну панель (или GroupBox) и дизаблить уже его


jedi   (2002-06-27 18:19:00) [5]

Napisal OnClick dlea odnoi knopki. Potom v Object Inspector dlea ostolnih v events nujno vibirat" proseduru cotoraya sformirovals" dlea pervoi cnopki.


Игорь Шевченко   (2002-06-27 18:14:00) [6]

var I:Integer;
begin
for I:=1 to ButtonsCount do
(FindComponent(Format("Button%d", [I]) AS TButton).Enabled := false;


rhf   (2002-06-27 18:12:00) [7]

просто сделай одну процедурудля обработки события от всех кнопок........

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


Наверх

Титульная страница Поиск, карта сайта Написать письмо