Форум: "Начинающим";
Текущий архив: 2009.08.16;
Скачать: [xml.tar.bz2];
ВнизОбработка чекбоксов Найти похожие ветки
← →
Нойвам (2009-06-21 02:33) [0]Добрый день, подскажите пожалуйста как правильно организовать проверку большого кол-ва checkbox`ов.
то есть я хочу сделать что то вроде этого:for i:=1 to n do
if checkbox[i].Checked=true then label[i].Caption:="1" else label[i].Caption:="0";
← →
Юрий Зотов © (2009-06-21 03:40) [1]Вариант 1 - сделать массивы (один хранит CheckBox"ы, другой - Label"ы).
Вариант 2 - оставить CheckBox"ам и Label"ам имена по умолчанию, а для поиска и использовать FindComponent.
Вариант 3. Назначить CheckBox"ам и Label"ам свойство Tag, а для поиска использовать цикл for i := 0 to ComponentCount - 1.
И еще можно варианты придумать. Все зависит от задачи - что в конечном счете нужно-то?
← →
TIF © (2009-06-21 05:32) [2]> проверку большого кол-ва checkbox`ов
Подозреваю, что вместо использования кучи вам было бы удобнее, проще и логичнее использовать компонент TCheckListBoxif CheckListBox1.State[i]=cbChecked then ля-ля-ля else тра-ля-ля;
А возможно, ещё и вместо label-ов использовать саму строку с "галочкой", которую мы щёлкаем:CheckListBox1.Items[i]:="Чайник на плите: вкл.";
CheckListBox1.Items[i]:="Чайник на плите: выкл.";
;-)
← →
Юрий Зотов © (2009-06-21 06:02) [3]
const
OnOff: array[boolean] of string = ("выкл.", "вкл.");
// ==========
with CheckListBox1 do
Items[i] := "Чайник на плите: " + OnOff[State[i] = cbChecked];
:o)
← →
Юрий Зотов © (2009-06-21 11:43) [4]Кстати, малюсенькая задачка для начинающих программеров (кто хочет, естественно) - сократить код в [3] и одновременно расширить его возможности.
Ув. профи, обратите внимание - для начинающих.
:о)
← →
axis_of_evil © (2009-06-22 11:28) [5]
const
OnOff: array[TCheckBoxState] of string = ("выкл.", "вкл.", "заело");
// ==========
with CheckListBox1 do
Items[i] := "Чайник на плите: " + OnOff[State[i]];
так?
// я на полном серьезе отношу себя к начинающим, потому как программированием занимался сколь-либо серьезно три года назад -> i am a table %>
← →
Ega23 © (2009-06-22 11:44) [6]
> i am a table %>
Ты - табличко? :)))
← →
brother © (2009-06-22 11:49) [7]> Ты - табличко? :)))
ну хоть не креведко)
← →
axis_of_evil © (2009-06-22 12:06) [8]
> Ega23 © (22.06.09 11:44) [6]
стол %>
← →
Юрий Зотов © (2009-06-22 14:10) [9]> axis_of_evil © (22.06.09 11:28) [5]
> так?
Конечно.
← →
axis_of_evil © (2009-06-22 14:11) [10]спасибо, Юрий :>
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2009.08.16;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.006 c