




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)
文檔簡介
1、VC中進行office編程操作word介紹VC中進行office編程的操作word,可以設(shè)置文字的樣式,新建表格,這里提供給大家一個類CWzjWordOffice:CWzjOffice類,用來對WORD進行簡單的操作。讀者評分 3 評分次數(shù) 1 正文大家先看一下CWzjWordOffice類怎么使用 CWzjWordOffice wd; /定義一個操作word的對象 wd.Create(); /創(chuàng)建一個word應(yīng)用程序增加一個文檔 wd.SetFont(25,魏碑,RGB(128, 0, 0); /設(shè)置字體(字號,字體名,顏色) wd.SetFont(1,0,0); /設(shè)置字體為粗體,不是斜體
2、,沒有下劃線 wd.SetParaphformat(1); /設(shè)置文字為居中對齊 wd.WriteText(軟件工程成績); /寫文字 wd.m_wdSel.TypeParagraph(); /回車換行 /設(shè)置表格字體 wd.SetFont(9,宋體); wd.SetFont(0,0,0); wd.CreateTable(2,4); /創(chuàng)建一個2行4列的表格 wd.WriteCellText(1,1,學(xué)號); /往1行1列單元寫“學(xué)號” wd.WriteCellText(1,2,姓名); /往1行2列單元寫“姓名” wd.WriteCellText(1,3,年齡); /. wd.WriteCe
3、llText(1,4,省份); wd.WriteCellText(2,1,23020723); wd.WriteCellText(2,2,汪自軍); wd.WriteCellText(2,3,25); wd.WriteCellText(2,4,湖北); wd.ShowApp(); /顯示word后面是效果圖。此主題相關(guān)圖片如下:按此查看圖片詳細(xì)信息正在讀取此圖片的詳細(xì)信息,請稍候 .要 在VC中進行OFFICE編程,先要導(dǎo)入OFFICE組件庫,方法是:VC類向?qū)г黾宇怓rom a type library找到D:Program FilesMicrosoft OfficeOFFICE11MSWO
4、RD.OLB增加一些類,在WORD中要增加的 _Application,_Document,_Font,_Paragraphformat,要是后面用到不夠的話,還可以回來用同樣的方法加上。下面是類的兩個文件.h文件/ WzjOffice.h: interface for the CWzjOffice class./#if !defined(AFX_WZJOFFICE_H_5E694706_F031_4E02_9674_69A4B7300931_INCLUDED_)#define AFX_WZJOFFICE_H_5E694706_F031_4E02_9674_69A4B7300931_INCLU
5、DED_#if _MSC_VER 1000#pragma once#endif / _MSC_VER 1000#include atlbase.h#include msword.h#include comdef.h#include /COlVirant/* 類名: CWzjOffice,CWzjWordOffice,CWzjExcelOffice 頭文件 WzjOffice.h * 描述: Office操作(WORD,EXCEL) 信息: 汪自軍 吉林大學(xué) 2007.01* 聯(lián)系: wzj23020723 TM: 39600719* blog: */=CWzjOffice=class CWzj
6、Office public: CWzjOffice(); virtual CWzjOffice();/=/=/=CWzjWordOffice=class CWzjWordOffice:CWzjOfficeprivate:public: _Application m_wdApp; Documents m_wdDocs; _Document m_wdDoc; _Font m_wdFt; Selection m_wdSel; Table m_wdTb;public: CWzjWordOffice(); virtual CWzjWordOffice(); /操作/*創(chuàng)建新文檔* BOOL Create
7、App(); /創(chuàng)建一個新的WORD應(yīng)用程序 BOOL CreateDocumtent(); /創(chuàng)建一個新的Word文檔 BOOL Create(); /創(chuàng)建新的WORD應(yīng)用程序并創(chuàng)建一個新的文檔 void ShowApp(); /顯示W(wǎng)ORD文檔/*文本書寫操作* void WriteText(CString szText); /寫文本 void NewLine(int nLineCount); /回車換N行 void WriteNewLineText(CString szText, int nLineCount = 1); /換N行寫字/*表格操作* void CreateTable(in
8、t nRow, int nColumn); void WriteCellText(int nRow, int nColumne, CString szText); /往表格中寫字 void WriteCellNewLineText(int nRow, int nColumne, CString szText, int nLineCount = 1); /表格換N行寫字 void New2StringArray(CString* pszArr, int nRow, int nColumn); /創(chuàng)建二維字符串?dāng)?shù)組 void WriteTableText(CString* pszText, int
9、 nRow, int nColumn); /用二維字符串?dāng)?shù)組填充表格 void SelectCell(int nRow, int nColumn); /選中表格/*字體設(shè)置* void SetFont(CString szFontName, float fSize = 9, long lFontColor = 0, long lBackColor=0); void SetFont(BOOL bBold, BOOL bItalic = FALSE, BOOL bUnderLine = FALSE); void SetTableFont(int nRow, int nColumn, CString
10、 szFontName = 宋體, float fSize=9, long lFontColor=0, long lBackColor = 0); void SetTableFont(int nRow, int nColumn, BOOL bBold, BOOL bItalic = FALSE, BOOL bUnderLine = FALSE);/*格式設(shè)置* void SetParaphformat(int nAlignment);/方法;#endif / !defined(AFX_WZJOFFICE_H_5E694706_F031_4E02_9674_69A4B7300931_INCLUD
11、ED_).cpp文件/ WzjOffice.cpp: implementation of the CWzjOffice class./#include stdafx.h#include WzjOffice.h#ifdef _DEBUG#undef THIS_FILEstatic char THIS_FILE=_FILE_;#define new DEBUG_NEW#endif/ Construction/Destruction/CWzjOffice:CWzjOffice()CWzjOffice:CWzjOffice()/=CWzjWordOffice=CWzjWordOffice:CWzjWo
12、rdOffice()CWzjWordOffice:CWzjWordOffice()BOOL CWzjWordOffice:CreateApp() if (FALSE = m_wdApp.CreateDispatch(Word.Application) AfxMessageBox(Application創(chuàng)建失敗!, MB_OK|MB_ICONWARNING); return FALSE; / m_wdApp.SetVisible(TRUE); return TRUE;BOOL CWzjWordOffice:CreateDocumtent() if (!m_wdApp.m_lpDispatch)
13、AfxMessageBox(Application為空,Documents創(chuàng)建失敗!, MB_OK|MB_ICONWARNING); return FALSE; m_wdDocs.AttachDispatch(m_wdApp.GetDocuments(); if (!m_wdDocs.m_lpDispatch) AfxMessageBox(Documents創(chuàng)建失敗!, MB_OK|MB_ICONWARNING); return FALSE; COleVariant varTrue(short(1),VT_BOOL); /*VARIANT vtTtemplate, vtNewTemplate,
14、 vtDocType, vtVisible; vtTtemplate.vt = VT_BSTR; _bstr_t bstr = ; vtTtemplate.bstrVal = bstr; vtNewTemplate.vt = VT_BOOL; vtNewTemplate.boolVal = FALSE; vtDocType.vt = VT_I4; vtDocTVal =0; vtVisible.vt = VT_BOOL; vtVisible.boolVal = TRUE; pDocs-Add(&vtTtemplate,&vtNewTemplate,&vtDocType,&vtVi
15、sible);*/ CComVariant Template(_T(); /為了簡單,沒有使用WORD的文檔模板 CComVariant NewTemplate(false),DocumentType(0),Visible; m_wdDocs.Add(&Template,&NewTemplate,&DocumentType,&Visible); /得到document和selection變量 m_wdDoc = m_wdApp.GetActiveDocument(); if (!m_wdDoc.m_lpDispatch) AfxMessageBox(Document獲取失敗!, MB_OK|M
16、B_ICONWARNING); return FALSE; m_wdSel = m_wdApp.GetSelection(); if (!m_wdSel.m_lpDispatch) AfxMessageBox(Select獲取失敗!, MB_OK|MB_ICONWARNING); return FALSE; return TRUE;BOOL CWzjWordOffice:Create() if (FALSE = CreateApp() return FALSE; return CreateDocumtent();void CWzjWordOffice:ShowApp() m_wdApp.Set
17、Visible(TRUE);void CWzjWordOffice:WriteText(CString szText) m_wdSel.TypeText(szText);void CWzjWordOffice:WriteNewLineText(CString szText, int nLineCount /* = 1 */) int i; if (nLineCount = 0) nLineCount = 0; for (i = 0; i nLineCount; i+) m_wdSel.TypeParagraph(); void CWzjWordOffice:SetFont(CString sz
18、FontName /*= 宋體*/,float fSize, long lFontColor /*= 0*/,long lBackColor /*= 0*/) if (!m_wdSel.m_lpDispatch) AfxMessageBox(Select為空,字體設(shè)置失敗!, MB_OK|MB_ICONWARNING); return; m_wdSel.SetText(F); m_wdFt = m_wdSel.GetFont(); m_wdFt.SetSize(fSize); m_wdFt.SetName(szFontName); m_wdFt.SetColor(lFontColor); m_
19、wdSel.SetFont(m_wdFt); Range r = m_wdSel.GetRange(); r.SetHighlightColorIndex(lBackColor);void CWzjWordOffice:SetFont(BOOL bBold, BOOL bItalic /* = FALSE */, BOOL bUnderLine /* = FALSE */) if (!m_wdSel.m_lpDispatch) AfxMessageBox(Select為空,字體設(shè)置失敗!, MB_OK|MB_ICONWARNING); return; m_wdSel.SetText(F); m
20、_wdFt = m_wdSel.GetFont(); m_wdFt.SetBold(bBold); m_wdFt.SetItalic(bItalic); m_wdFt.SetUnderline(bUnderLine); m_wdSel.SetFont(m_wdFt);void CWzjWordOffice:SetTableFont(int nRow, int nColumn, CString szFontName, float fSize, long lFontColor, long lBackColor) Cell c = m_wdTb.Cell(nRow, nColumn); c.Sele
21、ct(); _Font ft = m_wdSel.GetFont(); ft.SetName(szFontName); ft.SetSize(fSize); ft.SetColor(lFontColor); m_wdSel.SetFont(ft); Range r = m_wdSel.GetRange(); r.SetHighlightColorIndex(lBackColor);void CWzjWordOffice:SetTableFont(int nRow, int nColumn, BOOL bBold, BOOL bItalic /* = FALSE */, BOOL bUnderL
22、ine /* = FALSE */) Cell c = m_wdTb.Cell(nRow, nColumn); c.Select(); _Font ft = m_wdSel.GetFont(); ft.SetBold(bBold); ft.SetItalic(bItalic); ft.SetUnderline(bUnderLine); m_wdSel.SetFont(ft);void CWzjWordOffice:SetParaphformat(int nAlignment) _Paragraphformat p = m_wdSel.GetParagraphformat(); p.SetAlignment(nAlignment); m_wdSel.SetParagraphformat(p);void CWzjWordOffice:CreateTable(int nRow, i
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 《檔案管理教學(xué)課件設(shè)計與實現(xiàn)》
- 2025年白瓷餐具項目建議書
- 跨學(xué)科研究探索
- 家居市場:挑戰(zhàn)與機遇
- 《交融與發(fā)展:課件中的繼承與創(chuàng)新》
- 北京教育培訓(xùn)合同范本
- 《水利樞紐利國利民》課件
- 西式烹調(diào)師練習(xí)卷附答案
- 企業(yè)人力資源管理師-三級練習(xí)試題附答案(一)
- 國企煤礦出售合同范本
- 勞務(wù)派遣勞務(wù)外包項目方案投標(biāo)文件(技術(shù)方案)
- 2025年安全員C證(專職安全員)考試題庫
- 地理-天一大聯(lián)考2025屆高三四省聯(lián)考(陜晉青寧)試題和解析
- 2025年廣州市公安局招考聘用交通輔警200人高頻重點模擬試卷提升(共500題附帶答案詳解)
- 貴州省貴陽市2024-2025學(xué)年九年級上學(xué)期期末語文試題(含答案)
- 2025年江蘇海事職業(yè)技術(shù)學(xué)院高職單招職業(yè)適應(yīng)性測試近5年??及鎱⒖碱}庫含答案解析
- 計件工資計算表格模板
- 兩癌防治知識培訓(xùn)
- 《moldflow學(xué)習(xí)資料》課件
- 2025中國移動安徽分公司春季社會招聘高頻重點提升(共500題)附帶答案詳解
- 小學(xué)生主題班會 傳承雷鋒精神 爭做時代新人 課件
評論
0/150
提交評論