Форум: "Основная";
Текущий архив: 2005.06.29;
Скачать: [xml.tar.bz2];
ВнизВизуальный объект 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;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.044 c