Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

nasledjivanje iz COM objekata

[es] :: Pascal / Delphi / Kylix :: nasledjivanje iz COM objekata

[ Pregleda: 2227 | Odgovora: 10 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

priki

Član broj: 24732
Poruke: 700
*.datalab.si.

ICQ: 174153511


+26 Profil

icon nasledjivanje iz COM objekata09.11.2009. u 12:48 - pre 176 meseci
Zdravo

Imam neku komponentu koja je nastala iz TOleControl objekta
E sad, fora je u tome što mi imamo na 3 mesta istu, kilometarsku, funkcionalnost
Rešenje je naravno da se sve to smesti u naš objekat koji je izveden iz tog TOleControl objekta

I sve je to lepo zamisljeno samo prilikom zamene deklaracije, Delphi ne dozvoljava da
koristimo našu klasu kao definisani tip. Moje pitanje je :
jel to COM sistem ne dozvoljava i ima li nekog rešenja za to ?
 
Odgovor na temu

savkic
Igor Savkić

Moderator
Član broj: 92186
Poruke: 2739



+92 Profil

icon Re: nasledjivanje iz COM objekata09.11.2009. u 14:37 - pre 176 meseci
> I sve je to lepo zamisljeno samo prilikom zamene deklaracije, Delphi ne dozvoljava da
> koristimo našu klasu kao definisani tip. Moje pitanje je :
> jel to COM sistem ne dozvoljava i ima li nekog rešenja za to ?

Možeš li dati neki primer, ne pratim najbolje...
 
Odgovor na temu

priki

Član broj: 24732
Poruke: 700
*.datalab.si.

ICQ: 174153511


+26 Profil

icon Re: nasledjivanje iz COM objekata09.11.2009. u 15:17 - pre 176 meseci
Microsoft OWC kontrola,
posle instalacije u Delphi na paleti se pokaze komponenta: TPivotTable
(u design time-u se postavlja na formu)

E sad, zbog naših potreba , od te klase napravio sam našu klasu:

Code:

TTestPivotTable=class(TPivotTable)
  sa nekim metodama i funkcijama
end;


problem je kad na formi koja već sadrži TPivotTable pokušam ručno
promeniti deklaraciju (component replace) na TTestPivotTable,
ne dozvoljava mi iako je u uses listi, javi wrong type i traži popravku deklaracije

P.S.
TPivotTable je izvedena od TOleControl
 
Odgovor na temu

savkic
Igor Savkić

Moderator
Član broj: 92186
Poruke: 2739



+92 Profil

icon Re: nasledjivanje iz COM objekata09.11.2009. u 21:56 - pre 176 meseci

> problem je kad na formi koja već sadrži TPivotTable pokušam ručno
> promeniti deklaraciju (component replace) na TTestPivotTable,
> ne dozvoljava mi iako je u uses listi, javi wrong type i traži popravku deklaracije

Da li menjaš i u .dfm fajlu? GHExperts ima replace component expert. Pokušaj i da instaliraš svoju komponentu u IDE i da nju odmah staviš na formu.

 
Odgovor na temu

priki

Član broj: 24732
Poruke: 700
*.dynamic.dsl.t-2.net.

ICQ: 174153511


+26 Profil

icon Re: nasledjivanje iz COM objekata09.11.2009. u 22:03 - pre 176 meseci
Citat:
Da li menjaš i u .dfm fajlu? GHExperts ima replace component expert. Pokušaj i da instaliraš svoju komponentu u IDE i da nju odmah staviš na formu.


svuda, probao sam i GExperts, isto
 
Odgovor na temu

Rapaic Rajko
Bgd

Član broj: 4105
Poruke: 810
*.dynamic.sbb.rs.



+62 Profil

icon Re: nasledjivanje iz COM objekata12.11.2009. u 22:01 - pre 176 meseci
Pozdrav, druze!

Da li si pokusao da registrujes tu novu klasu kao komponentu? Ako jos nisi, pokusaj samo sa

Code:
RegisterClass(TTestPivotTable); // ovo je doduse iz "starog" Delphi-ja 


Udeni ovo negde u kodu, recimo u initialization delu unit-a u kojem je i deklaracija tvoje klase. Ako ovo ne prodje (Delphi ne prihvati), nemoj se muciti ni sa komponentom; nece raditi.

Pozz

Rajko
 
Odgovor na temu

priki

Član broj: 24732
Poruke: 700
*.datalab.si.

ICQ: 174153511


+26 Profil

icon Re: nasledjivanje iz COM objekata13.11.2009. u 10:38 - pre 176 meseci
jesam i opet neće
ideja je bila da kod napravimo malo lepšim i više koristnim ali Delphi ili COM sistem ne dozvoljava

tako da ćemo drugačije organizovati kod

hvala za pomoć
 
Odgovor na temu

savkic
Igor Savkić

Moderator
Član broj: 92186
Poruke: 2739



+92 Profil

icon Re: nasledjivanje iz COM objekata13.11.2009. u 10:51 - pre 176 meseci
> jesam i opet neće
> ideja je bila da kod napravimo malo lepšim i više koristnim ali Delphi ili COM sistem ne dozvoljava

Imaš li možda neki primer toga, voleo bih da to vidim. BTW da li si pokušao sa class helperom (za Delphi >= 2006)?
 
Odgovor na temu

priki

Član broj: 24732
Poruke: 700
*.datalab.si.

ICQ: 174153511


+26 Profil

icon Re: nasledjivanje iz COM objekata13.11.2009. u 11:52 - pre 176 meseci
primer čega ?
 
Odgovor na temu

tkaranovic
Tomislav Karanović
Beograd

Član broj: 220507
Poruke: 307



+18 Profil

icon Re: nasledjivanje iz COM objekata13.11.2009. u 12:31 - pre 176 meseci
Primer je (već) stavljen uz poruku:

Citat:
priki:
Code:

TTestPivotTable=class(TPivotTable)
  sa nekim metodama i funkcijama
end;




TTestPivotTable je komponenta. U naslovu teme piše Com objekat ali u svemu ostalom u tekstu govori da se traži smeštanje nove komponente na formu. To bi onda moralo da može da se pročita u tutorial-u na ES-u:

Tutorijal...

Ovaj link sam pronašao pretragom za: RegisterComponents

Pretpostavljam da u tom tutorilaju piše sve što nije jasno od detalja. Da bi preskočio par iteracija oko toga da li se traži ili ne ovo što sam napisao konkretno:

Napravio ovako komponentu, probao i radi (umesto "OWC11_TLB" i "Toma" treba staviti šta više odgovara, a za neki detalj pogledati gore navedeni tutorijal):

Code:

unit TTestPivotTableJ;

interface

uses
  Windows, SysUtils, Classes, Controls, OleCtrls, OWC11_TLB, ActiveX, Forms, ComObj;

type
  TTestPivotTable = class;

  TTestPivotTable = class(TPivotTable)
  private
  protected
  public
    constructor Create (AOwner : TComponent); override;
    destructor Destroy; override;
  published
  end;

procedure Register;

implementation

procedure Register;
begin
  RegisterComponents('Toma', [TTestPivotTable]);
end;

{TTestPivotTable}

constructor TTestPivotTable.Create(AOwner: TComponent);
begin
  inherited Create (AOwner);
end;

destructor TTestPivotTable.Destroy;
begin
  inherited;
end;


end.




Da dodam da je ovo primer, to znači da je na brzinu pravljen i da možda ima nekog viška ili mu nešto manjka ali se na formu stavlja bez problema. Inače sam ovako dograđivao TWebBrowser komponentu sa dodatkom uključivanja ili isključivanja ActiveX, java skripta ili učitavnja slikica iz samog programa... radi (godinama :)) bez problema...

 
Odgovor na temu

priki

Član broj: 24732
Poruke: 700
*.datalab.si.

ICQ: 174153511


+26 Profil

icon Re: nasledjivanje iz COM objekata13.11.2009. u 14:41 - pre 176 meseci
reseno je na drugi nacin
probacu i ovo pa cemo videti

hvala
 
Odgovor na temu

[es] :: Pascal / Delphi / Kylix :: nasledjivanje iz COM objekata

[ Pregleda: 2227 | Odgovora: 10 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.