Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 18.01.2012, 22:48   #1
Pudge
Пользователь
 
Регистрация: 18.01.2012
Сообщений: 23
По умолчанию Delphi. Объект checkbox и radiobutton

Всем добрый вечер!
Возникла такая проблема. На форме имеется 3 чекбокса. Пользователю соответсвенно предлагается выбрать любой из них, при желании сменить выбор. При выборе нужного чекбокса, у пользователя спрашивают, уверен ли он в своем выборе. Соотвественно если нет, я програмно меняются свойство check на false (чтобы сбросить галочку с чекбокса на форме), но процедура click этого чекбокса идет на исполнение по новой Как этого избежать?
P.S. Я понимаю всю суть, при изменении свойства check, компилятор подразумеват что пользователь совершил клик, и соотвественно вызывает его событие click. Каким способом можно обойти вызов его события?( мне просто требуется визуально снимать галку программным способом, без вызова события click)
И я как понимаю, с radiobutton таже история Заранее спасибо!
Pudge вне форума Ответить с цитированием
Старый 18.01.2012, 23:04   #2
zmey31313
Форумчанин
 
Регистрация: 19.11.2009
Сообщений: 155
Сообщение

наработки есть?
По всем вопросам связанным с Делфи или Паскаль обращайтесь, чем смогу тем и помогу.
Помог жми на весы!!!
dmi83206389@mail.ru
zmey31313 вне форума Ответить с цитированием
Старый 18.01.2012, 23:16   #3
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 18,922
По умолчанию

В CheckBoxClick проверка CheckBox.Checked и сразу выход, если False. Для RadioButton тоже проверять состояние, если отдельные процедуры для каждого из них. Только зачем делать отдельную, если можно одну на группу радиобуттонов
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию

Последний раз редактировалось Аватар; 18.01.2012 в 23:19.
Аватар вне форума Ответить с цитированием
Старый 19.01.2012, 00:05   #4
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

а ещё можно выключить обработку событий, присвоить нужное значение и вернуть обработчик на место.
ну типа так:
Код:
пусть процедура на onClick назначена такая:
procedure TForm1.CheckBox1Click(Sender: TObject);
begin
 .... что-то там...
end;

тогда, изменить без вызова метода на Click можно так:

  CheckBox1.OnClick := nil;
  CheckBox1.Checked := false;
  CheckBox1.OnClick := CheckBox1Click;
Цитата:
Сообщение от Аватар
Только зачем делать отдельную, если можно одну на группу радиобуттонов
угу. полностью согласен.


да и вообще, задачка, мягко говоря, странная... очень уж специфичный, ни на что не похожий интерфейс рисуется...
Serge_Bliznykov вне форума Ответить с цитированием
Старый 19.01.2012, 00:08   #5
Pudge
Пользователь
 
Регистрация: 18.01.2012
Сообщений: 23
По умолчанию

zmey31313
Ну я могу скинуть программу если желаете, только что это вам даст? За халявщика не принимайте пожалуйста, не такой
Аватар
Спасибо) Что-то сам не догодался, а так все просто
Pudge вне форума Ответить с цитированием
Старый 19.01.2012, 00:13   #6
Pudge
Пользователь
 
Регистрация: 18.01.2012
Сообщений: 23
По умолчанию

Serge_Bliznykov
Спасибо!
Цитата:
да и вообще, задачка, мягко говоря, странная... очень уж специфичный, ни на что не похожий интерфейс рисуется...
Суть в кратце объясню. СТоит выбор 1 из 3. Соответсвенно после выбора, идет проверка, уверен ли пользователь в выборе, есл нет, сбросить выбранные чекбоксы(галочки).
Я особо с объектами радиобаттон не дружил до сих пор, прочитал про группы радиобаттонов, и не понял отличия. Объясните пожалуйста, чем например 2 радиобаттона отличаются от группы в которую входит 2 радиобаттона?
То что можно будет активировать на одной форме радиобаттон и в группе и не в группе это ясно, а чем еще? Спасибо
Pudge вне форума Ответить с цитированием
Старый 19.01.2012, 00:51   #7
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 18,922
По умолчанию

RadioGroup - один объект с несколькими взаимосвязанными кнопками и общими событиями. Эти кнопки не зависят от других радиобуттонов. Отдельные радиобуттоны можно зато разместить как угодно, но имеющие одного Parent-а будут зависить друг от друга. Для них процедура OnClick обычно тоже делается общей, но не автоматом, а программистом
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Привязка RadioButton к CheckBox woollfer C++ Builder 3 30.09.2011 11:06
Мерцание RadioButton (delphi) CAMOBAP Помощь студентам 3 23.01.2011 18:56
Много строчный CheckBox и RadioButton Devostator Общие вопросы Delphi 3 09.10.2010 22:22
RadioButton Delphi Source-of-life Помощь студентам 3 26.03.2010 00:44
RadioButton(Delphi) 2009 Помощь студентам 9 09.03.2009 16:03