Форум программистов, компьютерный форум, киберфорум
Delphi для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.83/40: Рейтинг темы: голосов - 40, средняя оценка - 4.83
0 / 0 / 0
Регистрация: 22.06.2017
Сообщений: 8

Как при программном изменении свойства checked checkbox не выполнять событие onclick?

22.06.2017, 15:45. Показов 7763. Ответов 6
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Если прописать CheckBox1.Checked:=False;, то выполнится oncklick. Как этого избежать, при этом поменяв значение чекнутости на false? Обьясните чайнику.
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
22.06.2017, 15:45
Ответы с готовыми решениями:

Как при программном изменении свойства CheckBox1.Checked сделать чтоб не срабатывала CheckBox1Click
Как-то странно происходит, если я в программе пишу CheckBox1.Checked:=true;, код сразу бежит отрабатывать CheckBox1Click. А я хочу, чтобы...

Создать форму с CheckBox, при изменении свойства Checked менять цвет формы
Элемент управления CheckBox. Создать форму с CheckBox при изменении свойства Checked менять цвет формы.Помогите написать код программы.

Как при установке свойства checked на checkbox сделать ее видимой?
Еще такой вопрос: У меня есть таблица, которая изначально скрыта (style="display:none"), как при установки свойства checked на...

6
 Аватар для Пытливый
3763 / 2267 / 705
Регистрация: 29.05.2013
Сообщений: 9,622
22.06.2017, 16:03
Delphi
1
2
3
 CheckBox1.OnClick := nil;
 CheckBox1.Checked := not CheckBox1.Checked;
 CheckBox1.OnClick := CheckBox1Click;
0
Native x86
Эксперт Hardware
 Аватар для quwy
6859 / 3791 / 1026
Регистрация: 13.02.2013
Сообщений: 11,861
22.06.2017, 16:07
С реакцией контролов на программное изменение в Delphi все плохо. Одни выполняют события, связанные с изменением, другие нет. В вашем случае два варианта:
Delphi
1
2
3
4
5
6
CheckBox1.OnClick := nil;
try
  CheckBox1.Checked:=False;
finally
  CheckBox1.OnClick := CheckBox1Click;
end;
Или заводим булевую переменную, которую проверяем в обработчике CheckBox1Click и если она False, то ничего не делаем. Саму переменную присваиваем в False перед программной модификацией состояния и возвращаем в True после.
0
500 / 346 / 200
Регистрация: 20.10.2016
Сообщений: 1,101
22.06.2017, 20:54
quwy, зачем в этой конструкции try?
0
Native x86
Эксперт Hardware
 Аватар для quwy
6859 / 3791 / 1026
Регистрация: 13.02.2013
Сообщений: 11,861
23.06.2017, 00:56
TFullControl, привычка.
0
 Аватар для krapotkin
6849 / 4676 / 1464
Регистрация: 14.04.2014
Сообщений: 20,672
Записей в блоге: 21
23.06.2017, 06:37
именно чекбокс наиболее неудобен если его делать индикатором чего-то, как раз из-за вот этого функционала ))
я обычно в таких случаях делаю обычный TImage и TLabel
0
 Аватар для AHBAR
1077 / 488 / 316
Регистрация: 05.04.2013
Сообщений: 2,141
23.06.2017, 13:11
Цитата Сообщение от ьнуенькенькенье Посмотреть сообщение
Как этого избежать, при этом поменяв значение чекнутости на false?
можно с событии OnClick прописать условие выйти из процедуры если Checked = false
Delphi
1
2
3
4
5
6
7
8
9
10
procedure TForm1.CheckBox1Click(Sender: TObject);
begin
if not checkbox1.Checked then exit;
ShowMessage('Меня чекнули!');
end;
 
procedure TForm1.Button1Click(Sender: TObject);
begin
CheckBox1.Checked := false;
end;
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
23.06.2017, 13:11
Помогаю со студенческими работами здесь

Событие CellValueChanged запускается при программном изменении в ячейке
Добрый день коллеги! У меня возникла такая проблема. Я заполняю dataGridView из дата сета, далее я подгружаю русские эквиваленты...

Нужно, чтобы при checkbox.checked=true я мог набирать текст в textbox-е, ну и соответственно при checkbox.checked=false - нет.
есть checkbox и textbox. Нужно, чтобы при checkbox.checked=true я мог набирать текст в textbox-е, ну и соответственно при...

Как при изменении свойства Enabled у Checkbox не менять цвет его текста?
При изменении свойства Enabled у Checkbox цвет меняется на черный. Как запретить его менять? В событии изменения свойства Enabled...

Не всегда срабатывает onClick при изменении состояния checkBox
Ребят, такая проблема: делаю АРМ кое какой, и в начале заметил что onClick срабатывает при изменении состояния checkbox, и исходя из этого...

Многотабличный запрос при изменении значения свойства CheckBox
Привет! По условию задания необходимо создать приложение Windows Forms, которое выбирает из базы данных диски, которые соответствуют...


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

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Новые блоги и статьи
AkelPad-скрипты, структуры, и немного лирики..
testuser2 05.04.2026
Такая программа, как AkelPad существует уже давно, и также давно существуют скрипты под нее. Тем не менее, прога живет, периодически что-то не спеша дополняется, улучшается. Что меня в первую очередь. . .
Отображение реквизитов в документе по условию и контроль их заполнения
Maks 04.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеСпецтехники", разработанного в конфигурации КА2. Данный документ берёт данные из другого нетипового документа. . .
Фото всей Земли с борта корабля Orion миссии Artemis II
kumehtar 04.04.2026
Это первое подобное фото сделанное человеком за 50 лет. Снимок называют новым вариантом легендарной фотографии «The Blue Marble» 1972 года, сделанной с борта корабля «Аполлон-17». Новое фото. . .
Вывод диалогового окна перед закрытием, если документ не проведён
Maks 04.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: реализовать программный контроль на предмет проведения документа. . .
Программный контроль заполнения реквизитов табличной части документа
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: 1. Реализовать контроль заполнения реквизита. . .
wmic не является внутренней или внешней командой
Maks 02.04.2026
Решение: DISM / Online / Add-Capability / CapabilityName:WMIC~~~~ Отсюда: https:/ / winitpro. ru/ index. php/ 2025/ 02/ 14/ komanda-wmic-ne-naydena/
Программная установка даты и запрет ее изменения
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: при создании документов установить период списания автоматически. . .
Вывод данных в справочнике через динамический список
Maks 01.04.2026
Реализация из решения ниже выполнена на примере нетипового справочника "Спецтехника" разработанного в конфигурации КА2. Задача: вывести данные из ТЧ нетипового документа. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru