vfp调用word OR excel.docx_第1页
vfp调用word OR excel.docx_第2页
vfp调用word OR excel.docx_第3页
vfp调用word OR excel.docx_第4页
vfp调用word OR excel.docx_第5页
已阅读5页,还剩3页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

vfp调用word OR excel(二)10. 从VFP中导出数据的几种方法!答:当VFP处理好数据后,这时你可以用多种方法将这些数据导出,以便被其它应用程序(如Excel等)所用。下面向你简单介绍几种导出数据的方法:1.用“导出数据”对话框。你可以从VFP主菜单中选择“文件/导出”打开“导出”对话框,在该对话框中的“来源”框中输入表名(c:vfpstudents.dbf),在“类型”中指定要导出数据的类型(Microsoft Excel),在“到”框中输入导出的路径和文件名(C:excelaa.xls),然后按“确定”即可。这时你如果查看command窗口,可发现以下代码:COPY TO C:excelaa.XLS TYPE XL52.用COPY TO命令。COPY TO命令的工作对象是VFP中的表,它要依据“TYPE”项才知道要产生哪一类导出文件。对于上面的导出过程,可用以下方法实现:USE studentsCOPY TO C:excelaa.XLS TYPE XL512.在VFP6中,如何调用已经存在的WORD文件?oW = CREATEOBJECT(word.basic)with oW .Apprestore() .Appmaximize() .fileopen(路径+文件名.扩展名)ENDWITH13.打开word文件的控件?用RUN /N3 C:WORD.EXE 文档路径C:WORD.EXE是我自己写的,你用时换成WORD的真正路径就行了!比如用WORD 打开SD.DOC 就写RUN /N3 C:WORD.EXE C:SD.DOC另:TXLS_EOLE = CREATEOBJECT(word.application)TXLS_EOLE.Documents.Open(文件名.doc)TXLS_EOLE.Visible=.t.注意:别忘了关闭哦TXLS_EOLE.Documents.close&关闭文档TXLS_EOLE.quit&关闭wordRELEASE TXLS_EOLE &释放对象再者:fw=alltrim(this.value)if file(&fw) *documents.open filename(&fw) wrdapp = createobject(word.application) wrdapp.visible=.t. *wrdapp.documents.add wrdapp.documents.open(alltrim(this.value)else messagebox(fw+chr(13)+文件不存在,请确认,0+16,文件路径出错) RETURN(.F.)ENDIF14.在表单中创建一个编辑框,用来显示WORD文档!做一个按扭,在CLICK中写:THISFORM.EDIT1.value=FILETOSTR(GETFILE(DOC)这个不也行,而且还简单15.强烈建议: 直接使用ole可以在表单中打开word,建议不使用这种办法,改为利用api用windows默认的程序打开word,数据库只存储word文档所在的位置和名字。16在VFP中调用其他的程序 在VFP中我们可以用run来调用由VFP自身生成的.exe文件。命令格式:run c:.*.exe 当调用非VFP自身生成的.exe文件时,需要加上绝对路径和参数。一般来说,用VFP运行非VFP自身生成的可执行文件时,会有一个黑色的窗口显示一下。可以通过加上/n来隐藏这个窗口。例如运行Windows下的扫雷游戏,命令格式如下:RUN/n C:WindowsWinmine.exe 下面运行一个更复杂一点的程序。调用word打开c:下的一个名为mlx.doc的word文件,命令格式如下:run /n3 C:Program FilesMicrosoft OfficeOfficeWinword.exeC:mlx.doc参数:n 在运行时隐藏VFP的黑色窗口。 3 表示以最大化的方式运行程序。1正常方式、2最小化方式、3最大化方式 在这种情况下,可以通过加上参数使程序程序能够流畅运行,但还是要指定绝对路径,而在实际开发时我们常常无法确定所需要启动的应用程序的文件名及其绝对路径。比如,在上例中,我们可能无法确定用户的word到底安装在什么地方,如果用户把word安装到了别的地方,上述命令便会出错。再如,一个.gif文件,有的用户喜欢用ACD See来打开,有的用户喜欢用IE来打开,有的用户喜欢用豪杰来打开,为了解决这种情况我们可以调用Windows的文件关连来打开文件。即所有的文件都用系统默认的程序来打开。这就要调用Windows的Win32 API函数。调用方式如下:DECLARE INTEGER ShellExecute IN shell32.DLL INTEGER HWND,;STRING lpszOP, ;STRING lpszFile, ;STRING lpszParams, ;STRING lpszDir, ;INTEGER fsshowcmdDECLARE INTEGER GetDesktopWindow IN win32apiHWND = GetDesktopWindow()lpszOP = open* 指定要打开的文件名lpszFile =c:mlx.doclpszParams = lpszDir = c:tempfsshowcmd = 1* 执行ShellExecute命令LNRETURN = ShellExecute(HWND,lpszOP,lpszFile,lpszParams,lpszDir,fsshowcmd) 可以用任意的文件名来替换上文中的 c:mlx.doc 。如果指定的文件名Windows无法找到相应的关连程序,这时程序将不会做出反应。有关的参数可以自行偿试进行修改,以达到最佳效果。(以上的“”也可以写成“” 王卫东试验过)(紧接着看下面的ShellExecute使用详解)17.调用ShellExecute()函数打开网页有三个API函数可以运行可执行文件WinExec、ShellExecute和CreateProcess。CreateProcess因为使用复杂,比较少用。WinExec主要运行EXE文件。如:WinExec(Notepad.exeReadme.txt,SW_SHOW);ShellExecute不仅可以运行EXE文件,也可以运行已经关联的文件。首先必须引用shellapi.pas单元:usesShellAPI;(1).标准用法ShellExecute函数原型及参数含义如下:functionShellExecute(HWND;Operation,FileName,Parameters,Directory;ShowCmd)hWnd:用于指定父窗口句柄。当函数调用过程出现错误时,它将作为Windows消息窗口的父窗口。例如,可以将其设置为应用程序主窗口句柄,即Application.Handle,也可以将其设置为桌面窗口句柄(用GetDesktopWindow函数获得)。Operation:用于指定要进行的操作。最常用的动词是 Open, 其它可用的动词是 edit,print,explore 和 properties.其中“open”操作表示执行由FileName参数指定的程序,或打开由FileName参数指定的文件或文件夹;“print”操作表示打印由FileName参数指定的文件;“explore”操作表示浏览由FileName参数指定的文件夹。当参数设为nil时,表示执行默认操作“open”。FileName:用于指定要打开的文件名、要执行的程序文件名或要浏览的文件夹名。Parameters:若FileName参数是一个可执行程序,则此参数指定命令行参数,否则此参数应为nil或PChar(0)。Directory:用于指定默认目录。ShowCmd:若FileName参数是一个可执行程序,则此参数指定程序窗口的初始显示方式,否则此参数应设置为0。若ShellExecute函数调用成功,则返回值为被执行程序的实例句柄。若返回值小于32,则表示出现错误。上述仅仅是ShellExecute函数的标准用法,下面将介绍它的特殊用法。(2).特殊用法(已在金乡县宅基地管理系统的“欢迎表单”这使用)在label属性中定义mousepointer=99&自定义鼠标指针(这里是手型)在label的init事件中添加如下代码:this.MOuseicon=HAND.CUR &设定当鼠标移动到该标签时鼠标会变成一只小手。要有一个小手的.cur文件,我是在QQ中找到的。* * * 通过调用win32API函数实现打开网页代码 * * * 声明ShellExecute函数DECLARE INTEGER ShellExecute IN shell32.DLL INTEGER HWND,; STRING lpszOP, ; STRING lpszFile, ; STRING lpszParams, ; STRING lpszDir, ; INTEGER fsshowcmd* 声明GetDesktopWindow函数,该函数激活Windows桌面DECLARE INTEGER GetDesktopWindow IN win32api* 指定从Windows桌面上运行ShellExecute函数HWND=GetDesktopWindow()lpszOP=* 指定ShellExecute操作的文件为lpszFile=http/:/u/1279340340lpszParams=* 指定ShellExecute的缺省目录为C:lpszDir=C:fsshowcmd=1* 执行ShellExecute命令*LNRETURN=ShellExecute(HWND,lpszOP,lpszFile,lpszParams,lpszDir,fsshowcmd)VFP调用Windows的文件关连来打开文件(本例为.jpg文件,已成功使用!)。*调用Windows的文件关连来打开文件代码(本例为.jpg文件)。即所有的文件都用系统默认的程序来打开。这就要调用Windows的Win32 API函数。调用方式如下:IF EMPTY(THISform.text2.VALUE) MESSAGEBOX(请先按“.”按钮选中所要打开的图像文件,64,系统提示)ELSE DECLARE INTEGER ShellExecute IN shell32.DLL INTEGER HWND,; STRING lpszOP, ; STRING lpszFile, ; STRING lpszParams, ; STRING lpszDir, ; INTEGER fsshowcmd DECLARE INTEGER GetDesktopWindow IN win32api HWND = GetDesktopWindow() lpszOP = open* 指定要打开的文件名 lpszFile =ALLTR(THISform.text2.VALUE) lpszParams = lpszDir = d:图像资料 &用于指定默认目录, 可设定为存放照片的文件夹,也可设为空值()。 fsshowcmd = 1* 执行ShellExecute命令 LNRETURN = ShellExecute(HWND,lpszOP,lpszFile,lpszParams,lpszDir,fsshowcmd) IF LNRETURN32 &返回值小于32,则表示出现错误(查找的文件不存在)。 MESSAGEBOX(查找的文件不存在!,64,系统信息) EN

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论