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

Вниз

А как, создав компонент, и добавив туда еще один, использовать   Найти похожие ветки 

 
Michael5   (2005-08-08 22:22) [0]

свойства, методы второго компонента?
Я о своем DBGrid, в который хочу встроить функции подключения к БД.
В частности, ADOConnection.
Хотел создать свой метод для DBGrid - DBGrid.ConnectionString, на основе ADOConnection.ConnectionString. Не получилось...

Если не трудно, киньте, пожалуйста, пример подобного компонента, где используются методы других компонентов. Конечно, похоже, придется книжку покупать, но пока хотелось бы разобраться так...

Вряд ли слишком просто сделать мой код рабочим, но на всякий случай приведу его. (И почему это "MyADOConnection" незадекларирован...?)

Заранее благодарен


unit MyDBGrid;

interface

uses
 Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, DBGrids, DB, ADODB, StdCtrls;

type
 TMyDBGrid = class(TDBGrid)
 private
   MyDataSource: TDataSource;
   MyADOConnection: TADOConnection;
   MyADOTable: TADOTable;
   FButton:TButton;
   { Private declarations }
 protected
   { Protected declarations }
 public
   { Public declarations }
 published
 constructor Create(AOwner:TComponent); override;
procedure ConnectionString(const Value: WideString);
procedure MyADOConnection.SetConnectionString(const Value: WideString); override; //[Error] MyDBGrid.pas(25): Undeclared identifier: "MyADOConnection"
 end;

procedure Register;

implementation

procedure Register;
begin
 RegisterComponents("Standard", [TMyDBGrid]);
end;

{ TMyDBGrid }

constructor TMyDBGrid.Create(AOwner: TComponent);
begin
 inherited;
FButton:=TButton.Create(Self);
FButton.Parent:=Self;
end;

procedure TMyDBGrid.ConnectionString(const Value: WideString);
begin
//MyADOConnection.SetConnectionString(Value);
end;

end.


 
Наиль ©   (2005-08-08 22:36) [1]

Любой компонент используемый в твоём нужно создавать в конструкторе и уничтожать в деструкторе (но не всегда).
В таком случае твоя закоментированая строчка станет работать.
Для полноценной работы нужно задать в конструкторе большинство свойств дочернего объекта.


 
Michael5   (2005-08-08 23:01) [2]

Спасибо! Получается :) Забыл про создание!



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

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

Наверх




Память: 0.47 MB
Время: 0.042 c
3-1133431575
Juice
2005-12-01 13:06
2006.01.29
CDS: Отмена изменений Delta без внесения ее в Data


15-1136269910
begin...end
2006-01-03 09:31
2006.01.29
С Днём рождения! 3 января


2-1136796548
M@X_1
2006-01-09 11:49
2006.01.29
Подскажите чайнику


4-1132543193
hed
2005-11-21 06:19
2006.01.29
Как можно узнать какое приложение запустило мою программу?


6-1129522791
dreamse
2005-10-17 08:19
2006.01.29
Пропадает связь с сервисом после Logoff