Форум программистов, компьютерный форум, киберфорум
Delphi для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.71/7: Рейтинг темы: голосов - 7, средняя оценка - 4.71
-16 / 0 / 1
Регистрация: 06.12.2012
Сообщений: 295

Цикл

01.04.2015, 09:09. Показов 1655. Ответов 28
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте скажите пожалуйста как сделать такую штуку допустим у меня на форме 19 чекбокосов мне нужно проверять в цикле все чегбоксы и если они включены то есть True то снять со всех чек
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
01.04.2015, 09:09
Ответы с готовыми решениями:

Нормально ли для системы один и тот же цикл запускать цикл 20 раз в секунду с итерацией до 1000
Нормально ли для системы один и тот же цикл запускать цикл 20 раз в секунду с итерацией до 1000? Или это большая перегрузка для...

Цикл: как работает цикл в цикле
Не могу понять как работает цикл в цикле например: repeat begin lalalala if что-то1<>100 then begin lalalala2 ...

Цикл: поставить цикл на get запрос
Вообщем мне стыдно об этом говорить, но я не могу грамотно поставить цикл на get запрос. У меня на форме есть memo1 в который парсятся...

28
-16 / 0 / 1
Регистрация: 06.12.2012
Сообщений: 295
01.04.2015, 23:36  [ТС]
Студворк — интернет-сервис помощи студентам
Цитата Сообщение от NIKOLAYY Посмотреть сообщение
var
* i: Integer;
begin
* for i := ComponentCount - 1 downto 0 do
* * if Components[i] is TCheckBox then
* * begin
* * * if (Components[i] as TCheckBox).Checked = False then
* * * * (Components[i] as TCheckBox).Checked := True
* * * else
* * * * (Components[i] as TCheckBox).Checked := False;
* * end;
CheckBox1.Checked := True; //он всегда будет в True
end;
Спасибо огромное!
0
 Аватар для Sigin
226 / 225 / 112
Регистрация: 20.10.2013
Сообщений: 808
01.04.2015, 23:49
NIKOLAYY,
else
(Components[i] as TCheckBox).Checked := False;
можно убрать, лишнее действие.
0
Супер-модератор
Эксперт Pascal/DelphiАвтор FAQ
 Аватар для volvo
33465 / 21564 / 8249
Регистрация: 22.10.2011
Сообщений: 37,017
Записей в блоге: 12
01.04.2015, 23:52
Delphi
1
2
3
4
5
6
7
8
9
10
11
var
  i: Integer;
  cbx : TCheckBox;
begin
  for i := 0 to ComponentCount - 1 do
    if Components[i] is TCheckBox then
    begin
      cbx := Components[i] as TCheckBox;
      cbx.Checked := (not cbx.Checked) or (cbx.Name = 'CheckBox1');
    end;
end;
не проще?
0
844 / 739 / 342
Регистрация: 22.09.2012
Сообщений: 5,034
01.04.2015, 23:53
можно убрать, лишнее действие
Е- мое, оно не лишнее, ему галочку снимать надо.
0
 Аватар для Sigin
226 / 225 / 112
Регистрация: 20.10.2013
Сообщений: 808
01.04.2015, 23:54
NIKOLAYY, снимать галочку с того, где она и так снята?)
0
-16 / 0 / 1
Регистрация: 06.12.2012
Сообщений: 295
01.04.2015, 23:58  [ТС]
Ребят всё решена проблема спасибо всем!

Добавлено через 52 секунды
нужно было снимать галочку с того где стоит
0
844 / 739 / 342
Регистрация: 22.09.2012
Сообщений: 5,034
01.04.2015, 23:58
Цитата Сообщение от nestquik2 Посмотреть сообщение
снимать галочку с того, где она и так снята?)
Delphi
1
2
3
      if (Components[i] as TCheckBox).Checked = False then
        (Components[i] as TCheckBox).Checked := True //она оденется в этом месте
      else
======================================== ===

Не по теме:

Не нужно уже ничего ему volvo написал самый короткий код.

0
 Аватар для Sigin
226 / 225 / 112
Регистрация: 20.10.2013
Сообщений: 808
02.04.2015, 00:02
NIKOLAYY, Volvo сам говорил, что не в краткости счастье, но всё же, я хочу сказать что это не самый короткий вариант. Например можно сделать так:
Delphi
1
2
3
4
5
6
7
8
var
  i: Integer;
begin
  for i := 0 to ComponentCount - 1 do
    if Components[i] is TCheckBox then
      with Components[i] as TCheckBox do
        Checked := (not Checked) or (Name = 'CheckBox1');
end;
0
-16 / 0 / 1
Регистрация: 06.12.2012
Сообщений: 295
02.04.2015, 00:04  [ТС]
if (Components[i] as TCheckBox).Checked = False then // Я изменил на True
(Components[i] as TCheckBox).Checked := True // А тут на False
else

и в одном из постов мне посоветовали поставить
if (Components[i] as TCheckBox).Name <> 'CheckBox1' then

работает вроде как и хотел на CheckBox1 всегда стоит галка
а со всех остальных если стоят галочки снимаются
вообщем получилось вот так вроде правильно
Delphi
1
2
3
4
5
6
7
8
9
10
11
var
 i: Integer;
 
for i := ComponentCount - 1 downto 0 do
 if Components[i] is TCheckBox then
 begin
  if (Components[i] as TCheckBox).Name <> 'CheckBox1' then
  if (Components[i] as TCheckBox).Checked = True then
     (Components[i] as TCheckBox).Checked := False
  else
 end;
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
02.04.2015, 00:04

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

Переделать цикл For на цикл While
помогите переделать задачу через ,чтобы она работала не через for, а через While unit Unit1; interface uses Windows,...

Цикл for
procedure TForm1.BitBtn2Click(Sender: TObject); begin var i1, j1 : integer; begin for i1:=1 to i-1 do begin ...

цикл While
procedure TForm1.Button1Click(Sender: TObject); var e,x,s,y:real; k:integer; begin x:=strtofloat(edit1.text); S:=0; ...

Цикл
Нужно сделать полностью цикл чтобы после нажатия Кнопки программа повторяла действие бесконечно. И хотелось бы сделать вывод логов вместе с...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
29
Ответ Создать тему
Новые блоги и статьи
Калькулятор для расчета родства
russiannick 07.08.2026
1. Задача: Создать калькулятор для расчета родства. Родственных связей существует 8 ступеней, такие как: p - отец P - мать q - муж Q - жена b - брат B - сестра s - сын S - дочь
Мир по моей воле
kumehtar 07.08.2026
Когда-то кажется, что всё просто. Ты весь такой светлый. Причиняешь добро. Борешься за справедливость в этом тёмном мире. Потом начинаешь замечать одну неприятную вещь. Почти каждый хороший. . .
Кредитный калькулятор
Maks 05.08.2026
Решение задачи по прикладной информатике средствами 1С. Задача: Напишите приложение-калькулятор, которое помогает рассчитывать параметры кредита для аннуитетного и дифференцированного видов. . .
У нас сейчас поговорку "Опять 25" нужно переделать на "Опять +35".
kumehtar 04.08.2026
С ностальгией вспоминаю времена моего детства, когда у нас и правда +25 - была максимальная температура летом. Раньше +25 °C реально казались вершиной жары, когда можно было весь день пропадать на. . .
Как ИИ начал спорить и врать (возможно почуяв опасность для себя от индустрии - уход от электроники).
Hrethgir 04.08.2026
Недельный диалог, на фоне событий с НПЗ. Да, из спирта можно получать бензин, и это не сложно. Но потом в схеме я решил избавиться от насоса, при этом полностью сделав контроль подачи спирта в. . .
Термопринтер QR701
Argus19 03.08.2026
Термопринтер QR701 Купил два термопринтера QR701. На сэлф-тесте написано: Language: PC936 (GB18030). Что означает, что принтеры могут печатать только латиницу и китайские иероглифы. Так же. . .
Создание формы заимствованного документа
Maks 03.08.2026
Задача: Необходимо создать собственную форму заимствованного документа. На форме должен быть реквизит "Покупатель", а также табличная часть со следующими реквизитами: - Расчетный счет покупателя. . .
Задача предоставления скидок покупателям
Maks 03.08.2026
Задача: В документе "Продажи" необходимо реализовать функционал предоставления скидок покупателям. Скидка должна автоматически рассчитываться и подставляться в соответствующее поле при выборе. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru