Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

[BCB]Form2繼承Form1的問題?

0 views
Skip to first unread message

老石頭

unread,
Jan 5, 1999, 3:00:00 AM1/5/99
to

請問:
如果我有Form1,上有一個Bottom1及Edit1
我在Bottom1的OnClick中撰寫
Edit1->Text = "This is Form1" ;

接著我繼承Form1成Form2,加上Edit2
同樣在Bottom1的OnClick中加上
Edit2->Text = "This is Form2" ;

但執行起來只有Form2的Bottom1的OnClick被執行
只有在Bottom1的OnClick為空時,
才會執行Form1的....

請問要如何寫! 才能繼承與被繼承的都執行!
我知在Delphi有inheritanced
但在BCB呢? 謝謝

--
[m [1;34m※ 來源:‧雲淡風清 bbs hole.touc.edu.tw‧[FROM: host179.2106245] [m

ycliaw(C.K.)

unread,
Jan 8, 1999, 3:00:00 AM1/8/99
to
老石頭 <Bein...@hole.touc.edu.tw> wrote:
> 請問要如何寫! 才能繼承與被繼承的都執行!
> 我知在Delphi有inheritanced
> 但在BCB呢? 謝謝

Maybe you can use TForm1::Button1Click(...);
to execute TForm1's function that has the same name
in TForm2.

Good Luck to You
ycliaw
---

老石頭

unread,
Jan 8, 1999, 3:00:00 AM1/8/99
to
..【 在 ycliaw. 的大作中提到: 】
:

可是這樣好像不符合物件繼承耶
難道不能像Delphi下inherited就好了嗎?

謝謝

--
[m [1;31m※ 來源:‧雲淡風清 bbs hole.touc.edu.tw‧[FROM: ppp18.touc.edu.] [m

ycliaw(C.K.)

unread,
Jan 9, 1999, 3:00:00 AM1/9/99
to
老石頭 <Bein...@hole.touc.edu.tw> wrote:
> : Maybe you can use TForm1::Button1Click(...);
> : to execute TForm1's function that has the same name
> : in TForm2.
> : Good Luck to You
> : ycliaw
> 可是這樣好像不符合物件繼承耶
> 難道不能像Delphi下inherited就好了嗎?
> 謝謝

Delphi 下的 inherited 不就是呼叫 parent class 內的同名
函式?不同的語言有不同的做法,除非改變你的程式碼...否則,
其他人的答案恐怕也跟我一樣。 :)

Good Luck to You
ycliaw

---

老石頭

unread,
Jan 10, 1999, 3:00:00 AM1/10/99
to
..【 在 ycliaw. 的大作中提到: 】
: 老石頭 <Bein...@hole.touc.edu.tw> wrote:
: Delphi 下的 inherited 不就是呼叫 parent class 內的同名

: 函式?不同的語言有不同的做法,除非改變你的程式碼...否則,
: 其他人的答案恐怕也跟我一樣。 :)
: Good Luck to You
: ycliaw
:

謝謝你
但是, Delphi用inherited並沒有直接指明被繼承的parent class
可是, 在BCB若用TForm1::Botton1.....卻要指明其parent class的名稱
若我這個Form1是要其他人使用的, 那他們不就還要查parent class
所以, 我想應有類似的如Delphi的inherited;
要不用BCB不是顯的更麻煩了!
--
[m [1;37m※ 來源:‧雲淡風清 bbs hole.touc.edu.tw‧[FROM: ppp28.touc.edu.] [m

ycliaw(C.K.)

unread,
Jan 11, 1999, 3:00:00 AM1/11/99
to
老石頭 <Bein...@hole.touc.edu.tw> wrote

> 但是, Delphi用inherited並沒有直接指明被繼承的parent class
> 可是, 在BCB若用TForm1::Botton1.....卻要指明其parent class的名稱
> 若我這個Form1是要其他人使用的, 那他們不就還要查parent class
> 所以, 我想應有類似的如Delphi的inherited;
> 要不用BCB不是顯的更麻煩了!

在 C++ 中有所謂的:多重繼承,如果繼承的 parent classes 都沒有
相同的 member function name,那就沒問題;如果它們之中出現了
同名的情況...而你又會使用到,問題就來了:到底 compiler 會選誰
當它的最佳女主角呢?不知道 :(
所以必須指定 class name。如果你的 TForm1 要讓別人繼承,當然得
先看一下裡面的 protected 及 public 部份的內容,就像你也會知道
BCB 的 class library 裡面有哪些 components,又有哪些函式可用。

Good Luck to You
ycliaw

---

ctien

unread,
Jan 15, 1999, 3:00:00 AM1/15/99
to

"老石頭" 的內容為:

>
> 若我這個Form1是要其他人使用的, 那他們不就還要查parent class
> 所以, 我想應有類似的如Delphi的inherited;
> 要不用BCB不是顯的更麻煩了!

就算Delphi inherited也是要知道parent class要做什麼動作
不過Delphi 包的好,讓你少寫幾個字,用久了我不認為兩者有什麼不同。


ctien

unread,
Jan 15, 1999, 3:00:00 AM1/15/99
to

ctien 的內容為:

> 就算Delphi inherited也是要知道parent class要做什麼動作
> 不過Delphi 包的好,讓你少寫幾個字,用久了我不認為兩者有什麼不同。

補充一句MFC這行是直接產生的,搞不好C++的人還覺得
Delphi inherited難用呢。


0 new messages