1.用VC++生成个Word怎么使之成为当前的焦点窗口
在app的之前,SetVisible应该是可以实现窗口激活的,你的可能是顺序和释放有问题,大致应该是这样: docs.Add(&tpl,&NewTemplate);//,&DocType,&Visble);// app.SetVisible(TRUE); //可见 位置不对,先注销掉 doc = app.GetActiveDocument(); sel = app.GetSelection(); sel=app.GetSelection();//获取文档的selection InlineShapes inlineshapes = sel.GetInlineShapes(); sel.MoveDown(COleVariant((short)4),COleVariant((short)41),COleVariant((short)0)); inlineshapes.AddPicture(BmpFilePath,COleVariant((short)FALSE),COleVariant((short)TRUE),&_variant_t(sel.GetRange()));//添加图片,并制定其位置为当前光标位置 inlineshapes.ReleaseDispatch(); sel.ReleaseDispatch(); doc.ReleaseDispatch(); app.SetVisible(TRUE);//在这里可见试试 app.ReleaseDispatch(); 记得word应该不需要其它操作,但如果实在不行,也可以用个无奈的办法,就是FindWindow查找顶层窗口找到Word窗口句柄,再用这个窗口句柄SetForegroundWindow就可以了。
大致就是: HWND hWord = ::FindWindow(NULL,窗口标题); ::SetForegroundWindow(hWord); 补充一下,在使用“无奈”办法之前,你可以去msword.h文件中找找App类的方法。我这里没有环境了,没法试,记得可能还有些方法,什么ShowThis或者ShowMe什么的,可以尝试一下。
2.vc调用Word写出怎么修改文件初始
vc6。
0Microsoft Office Word方法/步骤1打开vc6。0,新建一个MFC的基本对话框工程,我这里随便给它命名为1_12点击查看,建立类向导,点击Add Class,选择From a type library。
选择Microsoft Office安装目录下的MSWORD。 OLE文件(我的默认路径是C:\Program Files\Microsoft Office\OFFICE11\MSWORD。
OLE),打开。弹出一个增加类的界面,按shift全选(在程序设计的过程中,我们会知道哪些类是必要的,这里不管它),OK3在类视图区,会发现增加了很多类。
下面我们首先进行COM组建的初始化,在应用程序的InitInstance函数中增加以下代码:if(CoInitialize(NULL)!=S_OK){AfxMessageBox(“初始化COM组件失败!“);return FALSE;}4接下来自己新建一个类,用来封装操作Word的API函数。 点击插入,新建类,class type选择Generic Class(没有基类的),类名为CMeOffice。
5打开文件视图区,编译头文件MeOffice。h,在其中加入:#include“comdef。
h“#include“atlbase。 h“#include“msword。
h“和public:_Application m_wdApp; Documents m_wdDocs;_Document m_wdDoc;Selection m_wdSel;BOOL CreateApplication(); //创建ApplicationBOOL CreateDocument(); //创建Document文档BOOL WriteText(LPSTR szStr);//向文档中写入数据6编辑MeOffice。 cpp文件,加入自定义函数的实现(下面的代码的逻辑其实很好懂、看函数名就基本能明白函数的功能)://这个函数打开一个没有文档的应用程序界面BOOL CMeOffice::CreateApplication(){if(FALSE==m_wdApp。
CreateDispatch(“Word。Application“)){AfxMessageBox(“创建Application失败!“);return FALSE;}m_wdApp。
SetVisible(TRUE); //是否显示return TRUE;}BOOL CMeOffice::CreateDocument(){if(!m_wdApp。 m_lpDispatch){AfxMessageBox(“Application没有成功创建!“);return FALSE;}m_wdDocs。
AttachDispatch(m_wdApp。GetDocuments());if(!m_wdApp。
m_lpDispatch){AfxMessageBox(“AttachDispatch失败“);return FALSE;}CComVariant Template(““);CComVariant NewTemplate(false),DocumentType(0),Visible;m_wdDocs。 Add(&Template,&NewTemplate,&DocumentType,&Visible);//上面的代码足够新建一个文档m_wdDoc=m_wdApp。
GetActiveDocument();if(!m_wdDoc。m_lpDispatch){AfxMessageBox(“GetActiveDocument失败“);return FALSE;}m_wdSel=m_wdApp。
GetSelection();if(!m_wdSel。m_lpDispatch){AfxMessageBox(“GetSelection失败“);return FALSE;}return TRUE;}BOOL CMeOffice::WriteText(LPSTR szStr){m_wdSel。
TypeText(szStr);return TRUE;}7好了,类我们已经封装好了。现在我们可以调用封装的函数,实现操作word的功能。
在对话框类中新建一个成员变量 CMeOffice m_meOffice;在对话框初始化函数中加入下面的代码:m_meOffice。 CreateApplication();m_meOffice。
CreateDocument();m_meOffice。WriteText(“我是中国人民的儿子,我深深地爱着我的祖国!“);8运行程序,就自动新建了一个Application,里面有一个Document,上面显示“我是中国人民的儿子,我深深地爱着我的祖国!”。
3.如何把flash里的文字转化为WORD文档
根本不能把flash动画直接转换成word文档.除非用一个反编辑软件 可以转swf为fla格式.改成fla格式之后就可以了用flash8.0编辑了,就可以把相关的文字复制到word里面了. swf Decompiler破解版可以将swf文件转换成源文件.也可能提取swf动画中的素材.是一个很好的反编译flash的软件. 下载flash8.0去这个网站下吧,是破解版,自带注册码.很快的. 为了安装方便,我把注册码发给你. WPD800-58030-29432-42268 WPD800-54438-07532-49819。
4.用VC++生成个Word怎么使之成为当前的焦点窗口
在app的之前,SetVisible应该是可以实现窗口激活的,你的可能是顺序和释放有问题,大致应该是这样:
docs.Add(&tpl,&NewTemplate);//,&DocType,&Visble);
// app.SetVisible(TRUE); //可见 位置不对,先注销掉
doc = app.GetActiveDocument();
sel = app.GetSelection();
sel=app.GetSelection();//获取文档的selection
InlineShapes inlineshapes = sel.GetInlineShapes();
sel.MoveDown(COleVariant((short)4),COleVariant((short)41),COleVariant((short)0));
inlineshapes.AddPicture(BmpFilePath,COleVariant((short)FALSE),COleVariant((short)TRUE),&_variant_t(sel.GetRange()));//添加图片,并制定其位置为当前光标位置
inlineshapes.ReleaseDispatch();
sel.ReleaseDispatch();
doc.ReleaseDispatch();
app.SetVisible(TRUE);//在这里可见试试
app.ReleaseDispatch(); 记得word应该不需要其它操作,但如果实在不行,也可以用个无奈的办法,就是FindWindow查找顶层窗口找到Word窗口句柄,再用这个窗口句柄SetForegroundWindow就可以了。
大致就是:
HWND hWord = ::FindWindow(NULL,窗口标题);
::SetForegroundWindow(hWord);
补充一下,在使用“无奈”办法之前,你可以去msword.h文件中找找App类的方法。我这里没有环境了,没法试,记得可能还有些方法,什么ShowThis或者ShowMe什么的,可以尝试一下。
1986年7月29号的梦魇