Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.06.29;
Скачать: CL | DM;

Вниз

Визуальный объект 2 в одном.   Найти похожие ветки 

 
VadimX   (2005-06-06 18:42) [0]

Нужно в объекте на панели создать динамически DBGrid.
делаю так:

unit uezdbgrid;
interface
uses extctrls,classes,dbgrids,grids,Controls;
type
 TEzDBGrid = class(TCustomPanel)
   FDBGrid     : TDBGrid;
   procedure Show;
 private
   Constructor Create(Owner :TComponent); override;
   Destructor  Destroy;
 public
 end;
implementation
constructor TEzDBGrid.Create(Owner: TComponent);
begin
 inherited Create(Owner);
 FDBGrid           := TDBGrid.Create(Self);
 FDBGrid.Align     := alClient;
 FDBGrid.Parent    := Self;
 FDBGrid.Visible   := true;
end;

destructor TEzDBGrid.Destroy;
begin
 FDBGrid.Free;
 inherited;
end;

procedure TEzDBGrid.Show;
begin
 inherited Show;
 FDBGrid.Show;
end;

end.

Панель видно DBGrid на ней нет.
Что не так?


 
VadimX   (2005-06-06 19:28) [1]

Может нельзя DBGrid на панели создавать????


 
Юрий Зотов ©   (2005-06-06 19:44) [2]

В коде все нормально, кроме:
- параметр конструктора назван неверно;
- деструктор не перекрыт, а замещен;
- процедура Show не нужна;
- оператор FDBGrid.Visible := true тоже не нужен.

Компилятор должен давать замечания - приведите их.


 
VadimX   (2005-06-06 19:56) [3]

ошибка здесь
private
  Constructor Create(Owner :TComponent); override;
  Destructor  Destroy;
public

должно быть
private
public
  Constructor Create(Owner :TComponent); override;
  Destructor  Destroy;

все работает.


 
Юрий Зотов ©   (2005-06-07 16:45) [4]

Да, не обратил внимания.


 
Юрий Зотов ©   (2005-06-07 16:47) [5]

Дополнение - тем не менее, сказанное в [2] остается в силе. Если не исправите - как минимум, обеспечена утечка памяти.



Страницы: 1 вся ветка

Текущий архив: 2005.06.29;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.073 c
14-1117192030
dr Tr0jan
2005-05-27 15:07
2005.06.29
Гостиницы в Москве


4-1115260119
Naumov
2005-05-05 06:28
2005.06.29
Непонятная проблема с окнами


3-1115987536
Roman_SVT
2005-05-13 16:32
2005.06.29
Delphi и Mysql


1-1118051551
SergeiX
2005-06-06 13:52
2005.06.29
как убрать разбиение на страницы


3-1116718926
grol
2005-05-22 03:42
2005.06.29
Как из ADOQuery ков перенести информацию в Excel?