Показать сообщение отдельно
  #4  
Старый 10.11.2009, 09:44
Аватар для TOJluK
TOJluK TOJluK вне форума
Местный
 
Регистрация: 25.02.2009
Адрес: Минск
Сообщения: 551
Версия Delphi: 2007
Репутация: 110
По умолчанию

Цитата:
Сообщение от Alex_S_S
А можете подсказать как это делается? Как динамически создавать элемент (кнопку), да ещё и внути таблицы?
Для начала размести на форме DBGrid, организуй подключение к базе, разимести Button1 и сделай кнопку невидимой. В событии DBGrid1DrawColumnCell напиши:

Код:
procedure TForm1.DBGrid1DrawColumnCell(Sender: TObject; const Rect: TRect;DataCol: Integer; Column: TColumn; State: TGridDrawState);
var
  DrawState: Integer;
  DrawRect: TRect;
begin
 if (Column.Field.FieldName = 'ИМЯ_ПОЛЯ') then
  begin
  Button1.Left := Rect.Left + DBGrid1.Left + 1;
  Button1.Top := Rect.Top + DBGrid1.Top + 1;
  Button1.Width := Rect.Right - Rect.Left + 2;
  Button1.Height := Rect.Bottom - Rect.Top + 2;
  Button1.Visible := True;
  end;

end;

После подключения к базе- в столбце "ИМЯ_ПОЛЯ" будет прорисована кнопка.

З.Ы. Кнопку можно создать и динамически, но для начала разберись с этим.
Ответить с цитированием