哪们大虾知道如果将数据库中的数据输入到word中,
问题是考试卷,这个大家都知道吧.我的一个库中保存的是这个试卷.有各种题,长度不一样,如何控制输入行,和每一行输出多少个字符,以及如何控制空格.再有就是数据库中的图片如何输出到word上,并能打印出来.
问题是考试卷,这个大家都知道吧.我的一个库中保存的是这个试卷.有各种题,长度不一样,如何控制输入行,和每一行输出多少个字符,以及如何控制空格.再有就是数据库中的图片如何输出到word上,并能打印出来.
解决方案 »
- 截取esc信息問題 急!!!!!
- 请问在DLL中是否可以使用ServerSocket和CLientSocket控件?
- 请教:Edit1.Text := vartostr(ClientDataSet1.Aggregates.Items[0].Value);为何不能得到Aggregate字段的值?
- 如何用query对表进行修改和删除?
- 如何统计各个小时记录总数
- 高手请进
- 如何加密组件或控件?
- 那里有跟操作“DateTimePicker“一样的能操作“时间的“ 控件
- 请教: 动态地图方案设计
- dana(dana):来这拿分
- 求学生信息管理系统(delphi7.0+access)毕业设计!
- 删除文件夹问题!
1)、在Form1里加入一个System部件集里的TDdeClientCov部件
2)、将其ConnectMode设为ddeManual(手动方式);将DdeService设为‘(WinWord)’;将ServiceApplication设为‘WinWord’。
3)、编写一个自定义过程,以激活Word,如下:
procedure Tform1.WordActive(Cmds: TStrings);
var
WordPath: String;
begin
if(not DdeExample.OpenLink) then {判断是否巳动态链接}
begin
if(FindWindow('OpusApp', nil)=0) then
begin
WordPath := 'C:\msoffice\winword';
if(WordPath='') then
ShowMessage('中文Word未安装或未设置路径,请安装设置Word中文 版。')
else begin
DdeExample.ServiceApplication := WordPath+'\Winword.exe';
if(DdeExample.OpenLink) then {如果巳动态链接执行宏命令}
DdeExample.ExecuteMacroLines(Cmds,False)
else
ShowMessage('无法启动Word中文版!');
DdeExample.ServiceApplication := 'WinWord.exe';
end;
end
else begin{如果巳动态链接执行宏命令}
DdeExample.ExecuteMacroLines(Cmds,False);
end;
end
else
DdeExample.ExecuteMacroLines(Cmds,false);
end; 在private声明区里加入如下:
procedure ActiveWord(Cmds: TStrings); 3)在Form1中加入一个按钮Button1,在其onclick事件里写如下代码:
procedure TForm1.Button1Click(Sender: TObject);
var
Cmds:TStringList;{创建Cmds}
TempItem1,TempItem2:String;
begin
cmds:=TStringList.Create;
cmds.Clear;
TempItem1:='数据项一';
TempItem2:='数据项二';
with Cmds do
begin
Clear;
Add('[FileNew.Template ="Example.Dot″]');{打开模板文件Example.Dot}
Add('[AppMaximize]');{文档最大化}
Add('[SetFormResult"Item1″,″'+TempItem1+'″]');{将数据TempItem1传给表单域Item1}
Add('[SetFormResult"Item2″,″'+TempItem2+'″]);{将数据TempItem2传给表单域Item2}
end;
WordActive(DdeExample,Cmds);{调用自定义过程}
Cmds.Free;{释放Cmds}
end; 运行这个程序,单击Button1,大家可以发现Word被启动了,屏幕上出现了:数据项一;数据项二两个数据项。最后,大家可以任意修改本报表的格式及数据,因为这时这个报表与具体的应用程序巳没有关系了。 本例中用的是中文Word6或中文Word7。由于Word97的宏命令巳变为Visual Basic语句,如大家想用Word97实现,请将其宏命令改变为相应的代码。 这是个简单的示例,大家可以利用Word的宏录制功能,录取更多的宏(如自动生成表格、填充文字、变动字体等宏命令),并与数据库的各种表联系起来,依次加入Cmds中即可实现您所要求的更复杂的功能。