Property OldCreateOrder does not exist 錯誤解決!

來源:互聯網
上載者:User
    在使用Frame作為基類實現繼承時,發現視窗出現“ Property OldCreateOrder does not exist ”的錯誤,在網上找了一大圈也沒有。後來在Borland網站上找到了一些線索http://qc.borland.com/wc/qcmain.aspx?d=9481 和 http://qc.borland.com/wc/qcmain.aspx?d=5866 ,看一下My Code:

  TDMIBFrameHandle = class(TFrame)
  protected
    FOPETreeView: TMIBTreeView;
    function CheckEditers: Boolean; virtual; abstract;
    procedure ClearAddEditCheck; virtual; abstract;
    procedure ClearEditer; virtual; abstract;
    procedure DisableEditers; virtual; abstract;
    procedure DisableGrid; virtual; abstract;
    procedure EnabledEditers; virtual; abstract;
    procedure EnableGrid; virtual; abstract;
    function GetColumnValue(const aFieldName: string): Variant; virtual;
        abstract;
    procedure GetEditerValues; virtual; abstract;
    procedure InitializeEditer; virtual; abstract;
    procedure InitializeToolBar; virtual; abstract;
    procedure StartSelect; virtual; abstract;
  public
    procedure Close; virtual;
    procedure StartSurf; virtual;
  end;

  TDMIBFrame = class(TDMIBFrameHandle)
  end;

    光看這代碼我想應該沒有什麼問題,但問題就出在這代碼上。因為這個代碼是建立純PAS檔案,也就是說不帶視窗的PAS。因為OldCreateOrder 是Form才有屬性,那麼如果以這個類來繼承它會自動加上Form中的屬性(因為基類沒有視窗,而繼承類中有視窗,Delphi自動加上了Form的屬性)。那麼解決方案很簡單,建立一個帶視窗的Frame基類,再從這個基類繼承即可。不知道是不是單間D7的問題(感覺是個BUG),2007不知道有沒有這個問題。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.