Форум: "Основная";
Текущий архив: 2003.09.15;
Скачать: [xml.tar.bz2];
ВнизПробег по компонентам Найти похожие ветки
← →
Skif (2003-09-03 05:19) [0]Есть группа чекбоксов. Помечаюстя некоторые. Мне нужно после отработки моего кода, галочки снять с помеченных. Я знаю что есть метод решения в дельфях. Я его даже встречал, но не помню. Напомните, плиз.
← →
Zergling (2003-09-03 05:56) [1]for I := 0 to Form1.ComponentCount - 1 do
if (Form1.Components[I] is TCheckBox) then
if (Form1.Components[I] as TCheckBox).Checked then (Form1.Components[I] as TCheckBox).Checked := False;
← →
KSergey (2003-09-03 07:15) [2]Может есть смысл воспльзоваться TCheckListBox?
Тогда просто
for i := 0 to CheckListBox.Items.Count-1 do
CheckListBox.Checked[i] := FALSE;
← →
Юрий Зотов (2003-09-03 07:26) [3]Зачем так много лишнего? В методе той же формы пишем:
for I := 0 to ComponentCount - 1 do
if Components[I] is TCheckBox then
TCheckBox(Components[I]).Checked := False;
1. Избавляемся от ссылки на конкретный экземпляр формы (которой, кстати, может и не быть или она может указывать не туда, куда нужно).
2. Избавляемся от лишней проверки if Checked.
3. Избавляемся от 2-х AS, которые после IS не только не нужны, но еще и замедляют работу.
Примечание.
Код сработает только для тех CheckBox"ов, владельцем которых является сама форма. Для всех компонентов, которые были положены на форму в design-time это так и есть, а если компонент создается в run-time, то в параметре его конструктора надо будет указать форму (лучше создавать в методе этой же формы и передавать Self).
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2003.09.15;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.012 c