🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: cn.bbs.comp.program
Article #1269

VFP�е�OLE�Զ�����MS OFFICE�ļ���

#1269
From: ���ܵ�Сʨ
Date: Sat, 18 Apr 1998 00:00
123 lines
9672 bytes
  ΢�?˾����,������л���Windows�IJ�Ʒ��ͬWindows���?
δ���İ汾��������OLE���ּ���,���ʹWindows��Ϊһ�ּ����Ժ�
ǿ��ƽ̨�����Ľ�����OLE���Զ���,������˵����VFP3.0(Visual Fo
xpro)�����ͨ��OLE�Զ���ʵ�ֶ�΢��OfficeӦ�õĿ��ơ�
    OLE�Զ�����򵥵�˵����:һ��Ӧ�ó����������һ��Ӧ�ó���
�Ĺ��,�����ͨ��һ��OLE������ʵ�֡�����������Ժͷ���,
�����������ö����״̬�����������Ŀ��ֵ,�������Զ�ijһ����
ִ��һ������,�����ӡ�ļ�������ȵȡ�
    ��΢���½��Ƴ���VFP3.0����,������֧��OLE�Զ����Ĺ���,ʹV
FP������Ӧ���ܹ�ʹ�������Ӧ�ó���ȥ�����ʺ��ڸ�Ӧ�ó���Ĺ�
��,������Ϊͻ���ľ�����΢���Officeһ�����Эͬ������
    ʹ��OLE�Զ���һ����Ҫ���������:���Ȼ���ij��������Ӧ��
������VFP�д����������ʹ���Ѿ����ڵĶ���;Ȼ��������ø�Ӧ��
����ķ��������������и��ֲ���,��Щ���������Ǻ����������
Ӧ�ó����е�����(����EXCEL�еĸ�������);���Ҫ�ͷ�OLE����
������Ӧ�ó���,�ͷ�OLE����
     Ϊ�˻�ȡ����Ӧ�õĶ���,��VFP�����ṩ�������������ڴ���
����,һ�������ij������Ϳ���ͨ���������Ժͷ������������
����
    1.CREATEOBJECT()����
    ��һ��֧��OLE�����Ӧ�ó����д���һ���¶���,�������ͬ��
Ҳ�������ڴ�Foxpro�ڲ��Ļ��û��Զ����������ɶ���,������ֻ
����OLE�������ɡ�
    �﷨: <memvar>=CREATEOBJECT(cCLassName)��
    ����: cCLassNameָ�����������¶�������OLE����,�¶���
����������ɡ�
    VFP�����������˳�����������ָ����OLE����:
    �� Visual Foxpro����;
    �� ���ڴ��а�����˳�������û��Զ������;
    �� ��ǰ�����е���;
    �� ʹ��SET CLASSIB����򿪵���.VCX����е���;
    �� ʹ��SET PROCEDURE����򿪵Ĺ���ļ��е���;
    �� ��Visual Foxpro����ִ�����е���;
    �� Windowsע���(����OLE�������)��
    ��Ӧ��cCLassName��OLE�����������﷨���:
    ApplicationName.Class
    ����,Ҫ��OLE�Զ������һ��MICROSOFT Word����,����������
���:
    A1=CREATEOBJECT("WORD.BASIC")
    ����һ�д���ִ���Ժ�,Word�ͻᱻ����(�����������Word��û
�����е������), ͬʱ��������ָ���Ķ�������,����δʹWord�ɼ�
,(��һ����ע��:���Word�Ѿ������е���, ��ִ����������ʱ,��
�ᴴ��һ���µķ����ʵ��������õ�ǰ�Ѿ����ڵ�ʵ��;��EXCEL 
��ͬ:����EXCELʹ�����CREATEOBJECT EXCEL�ͻ������������
,�������������ͬ��ʵ��)��һ�����󱻽����Ժ�,�Ϳ���ͨ��ʹ��
����Ķ�������ڴ������������������������,����ͨ�����A
1��������������¶�������Ժͷ���������:
     A1.Insert ("HELLO WORD��")
     A1.FILEPRINTDEFAULT

    2.GETOBJECT()����
    ����һ���Ѿ����ڵ�OLE�Զ�������(��������������������)
��
    �﷨:GETOBJECT([cFILENAME[,cCLASSNAME])��
    ����:cFILENAMEָ����Ҫ�����ļ�������·�����ļ���
     cCLASSNAME��Ҫ�������������(������Ҫ˵��һ��,cCLASSNAM
E������Ҫ���趨,��ΪOLE�Ķ�̬���ӿ�������ṩ���ļ������
��Ҫ������Ӧ��)��
    ����,����Ĵ���������EXCEL,����һ����MYSHEET.CLS���ļ�
,�����һ������,������洢��һ�������ڴ����MYCLS��:
     Mycls=GETOBJECT("C:\EXCEL\WORK\MYSHEET.CLS") 
    3.����
    �������˵������VFP��OLE�Զ�����MS Office�Ľ��Ӧ�á���
������˵������OLE�Զ�������VFP��ѡ���������ݲ���EXCEL����
�����,����ʾͳ�Ƶ����ͼ��,ͬʱ��Word����ʾ��ƪ����(A:\OL
E.DOC),ͬʱ��ӡ����ƪ���¡�
    ����VFP�����µı?,���������COMMANDBUTTON�ؼ�,����CAPT
ION�����Ը�Ϊ"OLE�Զ���",Ȼ�������˫����ť���ڴ��봰���м�
��:
    *****�������
    #DEFINE WAITMSG0_LOC "�밴�����������"
    #DEFINE WAITMSG1_LOC "����ִ�в�ѯ��"
    #DEFINE WAITMSG2_LOC "���� Excel �?��"
    #DEFINE WAITMSG3_LOC "����ѯ��Ϣ���뵽EXCEL���ӱ���С�"
    #DEFINE WAITMSG4_LOC "���ڴ��� Graph ����..."
    #DEFINE WAITMSG5_LOC "����Graph..."
    #DEFINE WAITMSG6_LOC "���� Word �ı�..."
    #DEFINE WAITMSG7_LOC "���!"
    PUBLIC objwddoc
    str= "����VFP�е�OLE�Զ���������΢��Office��Ӧ��"
    wait wind WAITMSG1_LOC nowait
    SELECT name,age FROM al  INTO array cust_distrib
    wait wind WAITMSG0_LOC
    wait wind WAITMSG2_LOC nowait
    objsheet=crea("Excel.Sheet") ****��������OBJSHEET
    objsheet.application.visible=.T. ****ʹ������ɼ�
    Wait wind WAITMSG3_LOC nowait
    *** ������ݵ�EXCEL��
    for i = 1 to _TALLY
    objsheet.Cells(i,1).Value = cust_distrib(i,1)
    objsheet.Cells(i,2).Value = cust_distrib(i,2)
    endfor
    Wait wind WAITMSG4_LOC nowait
    *** ����һ��ͼ�ζ��󵽹�������ȥ
    objChart1 = objsheet.ChartObjects.Add(100, 100, 200, 200
)
    ***����ͼ��.
    Wait wind WAITMSG5_LOC nowait
    objsheet.chartobjects(1).chart.;
    chartwizard(objsheet.range(objsheet.cells(1,1),objsheet.
cells(10,2)),-4100, 4,1,0,1,1,"","","","")
    objXLsheet.application.quit **�ر�EXCEL
    release objsheet  **�ͷ�OBJSHEET����
    Wait wind WAITMSG6_LOC nowait
    objWDdoc=crea("word.basic")
    objwddoc.fileopen("a:\ole.doc") **��A���ϵ�OLE.DOC�ļ�
    objwddoc.editgoto("biaoti")  **�༭��Ϊ"BIAOTI"����ǩ,��
�����е�OLE.DOC�еĵ�һ�ж�����ǩBIAOTIobjwddoc.insert (str)
 **��STR������ǩ��ǰ������
    objwddoc.fileprintdefault**��ӡ����ļ�
    Wait Wind WAITMSG7_LOC nowait
    release objwddoc
    ����ֻ��һ���򵥵�����,����˵��Visual Foxpro��OLE�Զ���
������OLE�Զ��������ѵ�������ѧϰ����������﷨,�Ա���VFP��
����ʹ����Щ��������������,���������﷨�Ͳ������
���������ĵ���,�û����������н��в��IJ��ڳ�����ʹ����
    ��Ҫע���������OLE�Զ�������Դ�ܼ��ԡ���дOLE�Զ����ij�
��ʱ,�ڴ��Ǻ���Ҫ������,�ڴ�Խ��ͬʱ���еij���Խ�ࡣһ��Ҫ��
�����߱�16MB�ڴ�͸����ܵ�486���ϴ��������ߡ�

--
�� ��Դ:���ϴ�С�ٺ���Ϣ����վ bbs.nju.edu.cn��[FROM: hsia.nju.edu.cn]
Technical Details
Message-ID: <3O9iYU$tL1@bbs.nju.edu.cn>
Path: arc1-ca.pugleaf.net!unknown!not-for-mail

Show Full Headers
Complete Article Headers
X-Google-Language: Chinese,GB
X-Google-Thread: fc86e,1d2ed72d6586934f,start
X-Google-Attributes: gidfc86e,public
From: pipishi.bbs@bbs.nju.edu.cn (���ܵ�Сʨ)
Subject: VFP�е�OLE�Զ�����MS OFFICE�ļ���
Date: 1998/04/18
Message-ID: <3O9iYU$tL1@bbs.nju.edu.cn>
X-Deja-AN: 345408785
X-Filename: Programming/M.892912254.A
Organization: nju_bbs
Newsgroups: cn.bbs.comp.program