Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

OnChange на BDEdit когда он происходит? [D7, MySQL]


Roman_kv ©   (2003-03-25 18:08:00) 

При создании формы вызываю позиционирование записи на датасете, но при показе OnChange происходит для каждого DBEdit, на сколько я понимаю OnChange должен срабатывать на изменения, а не на отображения?
пример такой один обработчик на все DBEdit-ы
procedure TForm1.Change(Sender: TObject);
begin
TDBEdit(Sender).Font.Style:=[fsBold];
end;

После открытия формы все DBEdit-ы становятся Bold, в чем я не прав?


Roman_kv   (2003-03-26 01:26:00) [1]

Нашел более простое решение
procedure TForm1.ChangeData(Sender: TObject);
begin
if TDBEdit(Sender).Modified
then TDBEdit(Sender).Font.Style:=[fsBold];
end;

Спасибо все равно


Соловьев   (2003-03-25 18:21:00) [2]

procedure Tf_ClientAdmin.dbGridDrawColumnCell(Sender: TObject;
const Rect: TRect; DataCol: Integer; Column: TColumn;
State: TGridDrawState);
begin
with TDBGrid(Sender) do
begin
if DataSet.UpdateStatus = usModified then
Canvas.Font.Style := [fsBold];
if DataSet.UpdateStatus = usInserted then
Canvas.Font.Style := [fsItalic];
DefaultDrawColumnCell(Rect, DataCol, Column, State);
end;
end;


Roman_kv   (2003-03-25 18:13:00) [3]

а можно примерчик, плиз


Соловьев   (2003-03-25 18:11:00) [4]


> срабатывать на изменения, а не на отображения?

нет как раз все нормально.
Нужно делать не в этом событии, а проверив статус записи: модифицырована, вставлена - менять соответсвенно шрифт.


Наверх

Титульная страница Поиск, карта сайта Написать письмо