excel表单的显示和切换(50分)

  • 主题发起人 主题发起人 Geminiyc
  • 开始时间 开始时间
G

Geminiyc

Unregistered / Unconfirmed
GUEST, unregistred user!
我有一个excel文件pz.xls,里面画了10张票据样本(大小相同),分别存放在sheet1-sheet10表单上。
我想在form1上放一个 OleContainer1,大小与票据相同,通过按钮切换依次显示10张票据。(只显示不用编辑,最好让用户看不出有excel的痕迹。)
该如何实现啊,主要是表单的切换不熟悉。
有时候票据只显示了一半,不知道为什么,而且退出程序后系统进程里面还有excel,说明没有释放。
求助。
 
大富翁现在比以前冷清多了……
delphi啊……
 
各位大侠,帮帮忙啊
 
我大概知道问题了,但不晓得如何解决。下面是我的主要代码——
//初始化代码,用于控制execl文件 form1.show
EclApp := CreateOleObject('Excel.Application');
EclApp.workBooks.open(ExtractFilePath(Application.ExeName)+'pz.xls');
EclApp.visible :=false;
//表单切换代码 button1.click
EclApp.WorkSheets[combobox1.text].activate;
//指定当前票据名称,切换表单
//OleContainer1.CreateObjectFromFile(ExtractFilePath(Application.ExeName)+'pz.xls', False);
OleContainer1.CreateLinkToFile(ExtractFilePath(Application.ExeName)+'pz.xls', False);
//OleContainer1.run;
由于上面的代码先后都打开了同一个execl文件,所以OleContainer1中的表格只显示了一部分,如果把第一部分代码去掉就可以显示全部内容,但那样又不能切换表单了。
该怎么办啊?!几天了
 
帮顶一个,顺便发个交流群:delphi天堂群:4654765
 
执着等待中……
 
周末来了,周一还会远吗?
 
不建议直接用excel,如果就只是文字之类。没有图片的话,用dx带的excel组件是不错的,
或者用其他的组件显示。用excel的话,很容易出现问题.
 
to aerobull:
谢谢你的关注。
我的excel内容都是文字的,但“用dx带的excel组件是不错的”是指的什么哦,不清楚,能说明白一点嘛,怎么用。
我的问题最关键的一点就是如何切换表单。
 
不推荐你用excel+ole,就是说在这种模式下很容易出现excel进程还在,而你的界面上已经没有了。很容易导致后续的操作失败。
我的意思是你可以找第三方的控件来显示excel文件。
dx只是其中之一的选择而已。
 
dx我在baidu上面没有查到,或者说太笼统了,能具体点详细点吗。或者给点其他excel第三方控件的名称。
 
后退
顶部