简单的了。。。快来拣!!!!!!!!!! (200分)

  • 主题发起人 主题发起人 pardboy
  • 开始时间 开始时间
P

pardboy

Unregistered / Unconfirmed
GUEST, unregistred user!
我在主窗体form1中放了个ScrollBox1,然后指定窗体ScrollBox1:=form2.parent
调用form2中的olecon打开WORD的文档
OleCon.CreateObjectFromFile(dlgOpen.FileName,false);
OleCon.DoVerb(-1);//此句必须,这样才可以启动WordApplication对象
V:=OleCon.OleObject;//取得WordDocument对象;
V.Application.CommandBars['Standard'].Visible:=False;//将“标准”工具栏设为不可见
V.Application.CommandBars['Formatting'].Visible:=False;
OleCon.DoVerb(-1);//刷新一次就可以了
为什么总是占满整个form1呢?而不是只在ScrollBox1中。
退出的时候还没发释放WORD会出错。。。
 
有吗?没有?有吗?没有?有吗?没有?干吗那么认真?随便说说阿~~~~~~~~~哪里有?
我也想要!大家都想要!!!
 
我也需要
 
在哪?有这么好的控件我也想要。
 
这个好像比较难,我的做法是装了office
 
不可能.除非微软把word文档的格式公开
 
微软有wordviewer是个可执行文件。这方面的控件有,但没有免费的.得分析WORD文件结构
 
98年的时候有个控件可以嵌在网页里就可以在浏览器里打开word文档了!
不知需不需要装office,找找看吧!
 
有吗,没有吗
我也想要. 我正在查看 word 的格式 我用的是
.不知各位有没有什么好的意见
 
改写下面这个函数
function Tfrm_main.Openexcel: Boolean;
var
Curexcel: string;
begin
Curexcel := GetRegString(HKEY_CLASSES_ROOT, '/excel.Application/CurVer', '', '');
if Curexcel = '' then
begin
Application.MessageBox('请先安装 excel 97 或 excel 2000!或 excel XP',
PChar(self.Caption), MB_OK + MB_ICONSTOP);
Result := False;
Exit;
end;

if (Curexcel <> 'excel.Application.8') and (Curexcel <> 'excel.Application.9') then
begin
{
Curexcel := GetRegString(HKEY_CLASSES_ROOT, '/excel.Application.8', '', '');
if Curexcel = '' then
begin
Curexcel := GetRegString(HKEY_CLASSES_ROOT, '/excel.Application.9', '', '');
if Curexcel <> '' then Curexcel := 'excel.Application.9';
end
else
begin
Curexcel := 'excel.Application.8';
end;
}
Curexcel := GetRegString(HKEY_CLASSES_ROOT, '/excel.Application.10', '', '');
if Curexcel <> '' then Curexcel := 'excel.Application.10';
if Curexcel = '' then
begin
Application.MessageBox('无法运行 excel 97 或 excel 2000,' + #13#10
+ '请检查 excel 97 或 excel 2000 是否已经正确安装。',
PChar(self.Caption), MB_OK + MB_ICONSTOP);
Result := False;
Exit;
end;
end;

try
Fexcel := CreateOleObject(Curexcel);
if VarIsEmpty(Fexcel) then
begin
Application.MessageBox('无法运行 excel 97 或 excel 2000,' + #13#10
+ '请检查 excel 97 或 excel 2000 是否已经正确安装。',
PChar(self.Caption), MB_OK + MB_ICONSTOP);
Result := False;
Exit;
end;
except
Application.MessageBox('无法运行 excel 97 或 excel 2000,' + #13#10
+ '请检查 excel 97 或 excel 2000 是否已经正确安装。',
PChar(self.Caption), MB_OK + MB_ICONSTOP);
Result := False;
Exit;
end;

try
begin
Fexcel.DisplayAlerts := False;

Fexcel.workbooks.Open(ExtractFilePath(Application.EXEName)+'Chinese Turnover Tax Macro Model (On 1997 Data).xls');
Fexcel.caption:='中国流转税宏观模型';
Fexcel.Visible := True;
Result := True;
end;
except
Application.MessageBox('分析失败,',
PChar(self.Caption), MB_OK + MB_ICONSTOP);
Result := False;
end;
end;

 
这种判断我早就看到过,但我有准确的答案。要求如上。。
但还是要谢谢了。
 
TOleContainer 是干什么用的?不要说Word,很多东东都可以拿来使用!
 
先建立一个WORD对象,打开DOC文档,再另存为RTF格式,再用RICHEDIT控件打开
 
多人接受答案了。
 
后退
顶部