線上訂房服務-台灣趴趴狗聯合訂房中心
發文 回覆 瀏覽次數:1080
推到 Plurk!
推到 Facebook!

物件自動產生的問題

答題得分者是:speedup
will
中階會員


發表:176
回覆:135
積分:62
註冊:2002-04-14

發送簡訊給我
#1 引用回覆 回覆 發表時間:2003-07-23 06:04:17 IP:211.72.xxx.xxx 未訂閱
小弟用程式自動產生TMediaPlayer 程式碼大致如下 var mp:TMediaPlayer if mp<> nil then mp.Free; mp:=TMediaPlayer.Create(Form1); MP.FileName:='tt.wav'; MP.Open; 執行到MP.open時出現了control has no parent windows 的錯誤 請問小弟該如可解決 Form1是不是mp的parent?
ha0009
版主


發表:16
回覆:507
積分:639
註冊:2002-03-16

發送簡訊給我
#2 引用回覆 回覆 發表時間:2003-07-23 07:24:26 IP:61.56.xxx.xxx 未訂閱
speedup
資深會員


發表:19
回覆:259
積分:280
註冊:2003-07-04

發送簡訊給我
#3 引用回覆 回覆 發表時間:2003-07-23 09:20:22 IP:210.243.xxx.xxx 未訂閱
引言: 小弟用程式自動產生TMediaPlayer 程式碼大致如下 var mp:TMediaPlayer if mp<> nil then mp.Free; mp:=TMediaPlayer.Create(Form1); mp.Parent := Form1;//add this line MP.FileName:='tt.wav'; MP.Open; 執行到MP.open時出現了control has no parent windows 的錯誤 請問小弟該如可解決 Form1是不是mp的parent?
TMediaPlayer.Create(Form1);中的Form1指的是Owner,Owner是VCL原元件架構中用來管理子Component,其中最被常用的機制就是當Owenr被釋放時,最主動先 釋放子Component; 但TComponent作為祖先類別,並無法管理視覺化元件(即TControl的子孫類別,設計時可調整大小,執行時可視的元件),TControl類別利用Parent屬性來指定誰可以顯示他,例如在Form上,一個Button可能放在一個Panel上,未必會放在Form上,因此Button此時的Parent為Panel, 所以,如果動態建立TControl子孫類別物件,請在Create之後,利用Parent來指定該物件顯示在那個Parent上(Parent必須為TWinControl子孫類別) 唉~
------
唉~
系統時間:2024-05-10 20:54:23
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!