Topic: связь combobox с DateTimePicker

День добрый! Спасибо за помощь с SQL запросом! Хочется побольше автоматизировать внесение данных. Как можно реализовать, чтобы при выборе определенной записи в comboboxе автоматически ставилась галочка в радиокнопке (DateTimePicker).
Например: При изменении статуса ремонта "готов", который выставляется через комбобокс, автоматически ставится галочка  даты готовности (DateTimePicker)

Re: связь combobox с DateTimePicker

Приветствую,

воспользуйтесь событием OnChange у компонента ComboBox, пример:

procedure Form1_ComboBox1_OnChange (Sender: string);
begin
     if Form1.ComboBox1.Text = 'Готов' then Form1.DateTimePicker1.Checked := True // если выбран пункт Готов, ставим галочку у DateTimePicker
     else Form1.DateTimePicker1.Checked := False; // иначе снимаем галочку
end;
Dmitry.

Re: связь combobox с DateTimePicker

Спасибо работает!
Решил на этой основе написать скрипт, чтобы при нажатии на checkBox ставилась галка на дате DateTimePicker...но что то ругается...

begin
  if frmApplication.CheckBox1.Checked := 'True' then frmApplication.DateTimePicker2.Checked := True
  else frmApplication.DateTimePicker2.Checked := False;

Re: связь combobox с DateTimePicker

кстати, хочу спросить. зачем у компонента DateTimePicker встроенный чекбокс? никогда не мог понять его полезность (что в Делфи, что здесь)

5 (edited by mitrich45 2014-07-04 12:43:37)

Re: связь combobox с DateTimePicker

заработал

procedure frmApplication_CheckBox1_OnClick (Sender: string);
  begin
  if frmApplication.CheckBox1.Checked = True then frmApplication.DateTimePicker2.Checked := True
  else frmApplication.DateTimePicker2.Checked := False; 
  end;

Re: связь combobox с DateTimePicker

mitrich45, оптимизируй так

frmApplication.DateTimePicker2.Checked:= frmApplication.CheckBox1.Checked;

Re: связь combobox с DateTimePicker

DenNik wrote:

mitrich45, оптимизируй так

frmApplication.DateTimePicker2.Checked:= frmApplication.CheckBox1.Checked;

спасибо!

Re: связь combobox с DateTimePicker

нуда, точна smile

Dmitry.

Re: связь combobox с DateTimePicker

Здравствуйте! Вот ещё по теме вопросик. При выборе пункта "Выполнено" галочка ставится в DateTimePicker всё работает но если поменять на какой нибудь другой пункт, то галочка убирается. Как сделать чтобы при выборе в комбобоксе нескольких значений, ставилась галочка в DateTimePicker. К примеру "Выполнено",  "Выдано" и "Без ремонта"?

procedure frmApplication_cbStatus_OnChange (Sender: string);
begin
     if frmApplication.cbStatus.Text = 'Выполнено' then frmApplication.dtDateReady.Checked := True
     else frmApplication.dtDateReady.Checked := False;
end;

Re: связь combobox с DateTimePicker

Приветствую,

необходимо просто перечислить данные значения в условии с операцией (OR) ИЛИ


procedure frmApplication_cbStatus_OnChange (Sender: string);
begin
     if (frmApplication.cbStatus.Text = 'Выполнено') OR (frmApplication.cbStatus.Text = 'Выдано') OR (frmApplication.cbStatus.Text = 'Без ремонта') then frmApplication.dtDateReady.Checked := True
     else frmApplication.dtDateReady.Checked := False;
end;
Dmitry.

Re: связь combobox с DateTimePicker

Благодарю!!

Re: связь combobox с DateTimePicker

Тут ещё вопросик , на основе этого примера пытался сделать чтобы при смене значения в одном комбобоксе, менялось значение в другом комбобоксе,

написал такое но не работает, я в программировании мало что понимаю, пишу всё по шаблонам

procedure frmApplication_cbMaster_OnChange (Sender: string);
begin
     if frmApplication.cbMaster.Text = 'Буслаев Евгений' then frmApplication.cbStatus.Text :='Выполнено'
end;


что здесь не так?

Re: связь combobox с DateTimePicker

Попробуйте так

procedure frmApplication_cbMaster_OnChange (Sender: string);
begin
     if frmApplication.cbMaster.Text = 'Буслаев Евгений' then frmApplication.cbStatus.ItemIndex := frmApplication.cbStatus.IndexOf('Выполнено');
end;
Dmitry.

Re: связь combobox с DateTimePicker

Не получилось (( копаю дальше

15 (edited by jazzitcool 2015-01-24 22:28:12)

Re: связь combobox с DateTimePicker

Дмитрий спасибо, нашел решение все почти так же, только не хватало слова items

dure frmApplication_cbMaster_OnChange (Sender: string);
begin
     if frmApplication.cbMaster.Text = 'Иван Петров' then frmApplication.cbStatus.ItemIndex := frmApplication.cbStatus.Items.IndexOf('В работе');
     end;

Re: связь combobox с DateTimePicker

jazzitcool wrote:

Не получилось (( копаю дальше

Пришлите пожалуйста ваш проект на support@drive-software.com
с ссылкой на ваше сообщение на форуме, постараюсь помочь.

Dmitry.

Re: связь combobox с DateTimePicker

Уже всё получилось спасибо ))