Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Delphi: Общие вопросы > Как вызыать процедуру TForm1.DBGrid1DrawColumnCell


Автор: Drizhenko 10.11.2005, 09:37
Как вызвать процедуру
Код
TForm1.DBGrid1DrawColumnCell(Sender: TObject; const Rect: TRect;  DataCol: Integer; Column: TColumn; State: TGridDrawState); 
из таймера и при нажатии кнопки?

Автор: ~FoX~ 10.11.2005, 10:16
Можно так:
Код

procedure TForm1.DBGrid1DrawColumnCell(Sender: TObject; const Rect: TRect;
  DataCol: Integer; Column: TColumn; State: TGridDrawState);
begin
  if sender = Button1 then ShowMessage('Нажата кнопа!!!');
end;

procedure TForm1.Button1Click(Sender: TObject);
var
  rect: TRect;
  DataCol: Integer;
  Column: TColumn;
  State: TGridDrawState;
begin
  DBGrid1DrawColumnCell(Sender, rect, DataCol, Column, State);
end;

Тока зачем?

Автор: Drizhenko 10.11.2005, 10:27
Идея такова. Есть база данных IP адресов. При нажатии на кнопку все адреса, занесенные в БД начинают пинговаться. Если адрес не доступен, то соответствующая ячейка заливается красным цветом.


Автор: ~FoX~ 10.11.2005, 11:34
Drizhenko
Ну вольнО конечно, а не проще сделать рефрешь и перерисовать по условию в красный то что нужно?
http://delphi.olympus.ru/dk/helloword/dbGridColor.htm

Автор: Drizhenko 10.11.2005, 11:58
Спасибо за ссылку. Конечно, лучше сделать как ты говоришь, просто я не знал, что так можно.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)