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

关于在Delphi中控制Wps,AutoCad的问题

尚未結案
dragon432503
一般會員


發表:2
回覆:1
積分:0
註冊:2003-09-04

發送簡訊給我
#1 引用回覆 回覆 發表時間:2003-09-08 17:53:35 IP:218.14.xxx.xxx 未訂閱
在Delphi中怎样才能控制AutoCAD,WPS的新建、打开、关闭、保存等功能,我用CreateOleObject建立该类型用,进行Visible操作之后CAD,WPS就独立于自己的系统过程,也就无法控制它的运行状态,如果采用TOLEContainer则不管InPLace状态是否为真,开打CAD时将单独运行,WPS则在本系统中运行但文件菜单不可见,另外用CreateOLEObject的方法中怎么在其对应的事件中写入DELPHI代码即:对应的事件响应对应的DELPHI代码,请教各位作过该方面系统的朋友给我一个完美的解决方案,谢谢!开发环境:Delphi7.0+SQL2000+ACAD2004+WPS2003  
qoo1234
版主


發表:256
回覆:1167
積分:659
註冊:2003-02-24

發送簡訊給我
#2 引用回覆 回覆 發表時間:2003-09-14 01:52:55 IP:61.216.xxx.xxx 未訂閱
請提供你的簡短程式碼,才能方便處理~ < src="http://delphi.ktop.com.tw/download/upload\33223_qoo.gif">網海無涯,學無止境!
dragon432503
一般會員


發表:2
回覆:1
積分:0
註冊:2003-09-04

發送簡訊給我
#3 引用回覆 回覆 發表時間:2003-09-14 10:58:24 IP:218.14.xxx.xxx 未訂閱
unit main; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, ActnColorMaps, ActnCtrls, ToolWin, ActnMan, ActnMenus, Menus, XPStyleActnCtrls, ActnList, CustomizeDlg, XPMan, OleCtnrs, ExtActns, StdActns, ComCtrls, OleServer,ComObj, OleCtrls; type TForm1 = class(TForm) Ole1: TOleContainer; ActionManager1: TActionManager; CoolBar1: TCoolBar; ActionMainMenuBar1: TActionMainMenuBar; XPColorMap1: TXPColorMap; RichEditBold1: TRichEditBold; RichEditItalic1: TRichEditItalic; RichEditUnderline1: TRichEditUnderline; RichEditStrikeOut1: TRichEditStrikeOut; RichEditBullets1: TRichEditBullets; RichEditAlignLeft1: TRichEditAlignLeft; RichEditAlignRight1: TRichEditAlignRight; RichEditAlignCenter1: TRichEditAlignCenter; OpenDialog1: TOpenDialog; aOpen: TAction; aClose: TAction; aExit: TAction; aSave: TAction; aEdit: TAction; aType: TAction; aExecute: TAction; aVersion: TAction; procedure aExitExecute(Sender: TObject); procedure aOpenExecute(Sender: TObject); procedure aSaveExecute(Sender: TObject); procedure aCloseExecute(Sender: TObject); procedure aEditExecute(Sender: TObject); procedure aTypeExecute(Sender: TObject); procedure aExecuteExecute(Sender: TObject); procedure aVersionExecute(Sender: TObject); private { Private declarations } public { Public declarations } end; var Form1: TForm1; WpsApp:Variant; implementation uses MyFun; {$R *.dfm} procedure TForm1.aExitExecute(Sender: TObject); begin Close; end; procedure TForm1.aOpenExecute(Sender: TObject); begin if OpenDialog1.Execute then begin if Ole1.State<>osEmpty then Ole1.DestroyObject; Ole1.CreateObjectFromFile(OpenDialog1.FileName,true); Ole1.Run ; end; end; procedure TForm1.aSaveExecute(Sender: TObject); begin if Ole1.Modified then Ole1.SaveAsDocument(Ole1.SourceDoc); end; procedure TForm1.aCloseExecute(Sender: TObject); begin Ole1.Close ; end; procedure TForm1.aEditExecute(Sender: TObject); begin Ole1.AllowInPlace := false; Ole1.DoVerb(ovPrimary); end; procedure TForm1.aTypeExecute(Sender: TObject); begin ShowMessage(Ole1.OleClassName) end; procedure TForm1.aExecuteExecute(Sender: TObject); Var sApp:_ApplicationEvent; begin try WpsApp := GetActiveOleObject('Wps.Application'); //该方法只在在 except WpsApp := CreateOleObject('Wps.Application'); end; WpsApp.Visible := True; wpsapp.Documents.Open ('E:\Kingsoft\WPS Office 2002\Samples\WPS\散文.wps'); end; procedure TForm1.aVersionExecute(Sender: TObject); begin ShowMessage(GetWindowsVersion) end; end. 發表人 - dragon432503 於 2003/09/14 11:03:44
系統時間:2024-06-28 18:56:07
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!