![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
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]
> срабатывать на изменения, а не на отображения?
нет как раз все нормально.
Нужно делать не в этом событии, а проверив статус записи: модифицырована, вставлена - менять соответсвенно шрифт.