Главная страница
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.03 c
9-1111239509
Radgar
2005-03-19 16:38
2005.06.29
Как изменить разрешение монитора.


8-1110174747
X-Disa
2005-03-07 08:52
2005.06.29
Работа с ICO


4-1115211348
Volume
2005-05-04 16:55
2005.06.29
Delete Ctrl+Alt+Del


11-1087458500
DmitryS
2004-06-17 11:48
2005.06.29
Архив форума KOL


6-1112079741
Гость
2005-03-29 11:02
2005.06.29
Реально ли отправить данные ...