全國最多中醫師線上諮詢網站-台灣中醫網
發文 回覆 瀏覽次數:1284
推到 Plurk!
推到 Facebook!

activex控件问题

尚未結案
dora729
一般會員


發表:4
回覆:0
積分:0
註冊:2005-09-05

發送簡訊給我
#1 引用回覆 回覆 發表時間:2005-11-09 08:54:41 IP:219.238.xxx.xxx 未訂閱
最近遇到两个问题,小弟初学delphi,实在搞不定,请各位前辈赐教; (1)小弟最近下了一个active x控件,是显示原子结构的,在delphi 7里面安装后,拖了一个到我窗口里面用,叫做MyViewerControl,但是有个问题:我设置这个控件的属性时,没有问题,比如下面这个: procedure TPDBViewForm.sbSelectClick(Sender: TObject); begin MyViewerControl.Mouse:=1; end; 但是我使用这个控件的函数时,会出现"Acess violation at address 00000000,Read of address 00000000"的错误,比如下面这个函数: procedure TPDBViewForm.sbStyleLineClick(Sender: TObject); var AtomDisplayStyle:widestring; begin AtomDisplayStyle:='Line'; MyViewerControl.SetAtomDisplayStyle(AtomDisplayStyle); end; 看了一下,发现是在下面这个函数这里发生问题的 procedure TViewerControl40.CreateControl; procedure DoCreate; begin FIntf := IUnknown(OleObject) as IViewerControl40; end; begin if FIntf = nil then DoCreate; end; function TViewerControl40.GetControlInterface: IViewerControl40; begin CreateControl; Result := FIntf; end; 是不是因为我没有create这个控件就使用它?(我是直接拖到窗口里面用的,就像lable,Image一样)如何create?它的create函数是这样的: TViewerControl40.Create(AOwner:Tcomponent) ,这个控件用VC 写了一个demo,在demo里SetAtomDisplayStyle这个函数是可以用的 (2)新建了一个WaitForm窗口,里面有一个Lable,写了一些提示信息,还有一个Animate,放了个动画,然后在MainForm里面调用WaitForm.show调出WaitForm,但是WaitForm只显示Animate的内容,而不显示Lable的内容,不知为什么?调出WaitForm后,MainForm调用执行了一个dos程序 WaitForm.Show;//调用WaitForm ExecAppWait('1.exe',strCommand);//调用1.exe程序,参数为strCommand; WaitForm.Close;//关闭WaitForm 初学delphi,请各位大大帮忙
系統時間:2024-11-25 18:49:54
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!