如何在自定的元件中加上connection屬性? |
答題得分者是:change.jian
|
ucdesign2
一般會員 發表:24 回覆:33 積分:11 註冊:2002-10-23 發送簡訊給我 |
請教各位前輩:
原本在自定的元件中動態產生TADOConnection,
但為了讓元件更具彈性,想要在元件中加上connection屬性,
如同TADOQuery中的connection屬性,
參考一些source但還是試不出來!請各位前輩指教,謝謝!! 原來動態產生TADOConnection的程式:
constructor TAddrPanel1.Create(AOwner: TComponent);
begin
:
:
Connect1:=TADOConnection.Create(Self);
Connect1.ConnectionString:='Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\Addr.Mdb;Persist Security Info=False';
Connect1.LoginPrompt:=False;
qry1:=TADOQuery.Create(Self);
qry1.Connection:=Connect1;
:
|
change.jian
版主 發表:29 回覆:620 積分:439 註冊:2003-06-02 發送簡訊給我 |
不曉得這是不是你要的,參考一下
type TAddrPanel1 = class(XXXX) private FConnected:Boolean public property Connected:Boolean read FConnected write SetConnected; end; .... procedure TAddPanel1.SetConnected(Value:Boolean); begin Connect1.Connected:=Value; FConnected:=Value; qry1.Connection:=Value; end; |
ucdesign2
一般會員 發表:24 回覆:33 積分:11 註冊:2002-10-23 發送簡訊給我 |
|
change.jian
版主 發表:29 回覆:620 積分:439 註冊:2003-06-02 發送簡訊給我 |
找到你說的source了,是在TCustomADODataSet裡的,對嗎? 這樣回到問題的原點了,你的TAddrPanel1是做什麼用的,或者說你是要寫出什麼功能的object?我看你的程式語法沒有問題啊
Connect1:=TADOConnection.Create(Self); Connect1.ConnectionString:='Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\Addr.Mdb;Persist Security Info=False'; Connect1.LoginPrompt:=False; qry1:=TADOQuery.Create(Self); qry1.Connection:=Connect1; |
ucdesign2
一般會員 發表:24 回覆:33 積分:11 註冊:2002-10-23 發送簡訊給我 |
|
change.jian
版主 發表:29 回覆:620 積分:439 註冊:2003-06-02 發送簡訊給我 |
不曉得這樣是不是你要的,如下:
type TAddrPanel1 = class(XXXX) private FConnection:TADOConnection; FQry:TADOQuery; FOwner:TComponent; public property Connection:TADOConnection read FConnection write SetConnection; constructor Create(AOwner:TCOmponent); end; .... constructor TAddrPanel1.Create(AOwner: TComponent); begin FOwner:=AOwner; : : //Connect1:=TADOConnection.Create(Self); //Connect1.ConnectionString:='Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\Addr.Mdb;Persist Security Info=False'; //Connect1.LoginPrompt:=False; //ADOConnection就不要自己產生了,因為要可以由外界指定,改成在private留一個變數即可 qry1:=TADOQuery.Create(Self); //qry1.Connection:=Connect1; <--這一行改到SetConnection裡 end; procedure TAddPanel1.SetConnection(Value:TADOConnection); begin FConnection:=Value; FQry.Connection:=Value; end; |
ucdesign2
一般會員 發表:24 回覆:33 積分:11 註冊:2002-10-23 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |