博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
matlab如何打开xlsx表格,matlab窗口中显示excel表格的问题
阅读量:5940 次
发布时间:2019-06-19

本文共 2109 字,大约阅读时间需要 7 分钟。

a4c26d1e5885305701be709a3d33442f.png

matlab窗口中显示excel表格的问题

(2000-08-13 11:59:10)

刚刚在恒润论坛看到的,感觉还不错,跟踪中……

http://www.hirain.com/forum/dispbbs.asp?boardID=1&ID=301

% -----------------------------

ycnzh 发言:

请教关于matlab窗口中显示excel表格的问题

因程序需要显示大量的结果分析数据,想到用excel交互,但希望能将excel中表格的指定区域在MATLAB的窗体中显示,而不是将Excel的界面整个显示出来,不知用什么方法比较好。曾试过用ActiveX和DDE,可惜只知道能将Excel的整个界面打开或者获得指定区域的数据,但不能在matlab产生的窗体界面中显示excel表格的指定区域,百思不得其解。还望高手指点。

如果能有好的显示表格的界面制作方法,希望能赐教,不胜感激。谢谢!

% -----------------------------

wgcui 发言:

在MATLAB中,目前还没有一个现成的显示表格的控件,一种方法是使用现有的控件来拼凑出表格样子,一个现成的例子就是随Runtime Server 带的例子:~matlab\toolbox\runtime\examples\amortsched.m,它使用了datagrid.m显示表格数据。

还有一种方式,是通过ActiveX控件,比如Micorsoft Flex Grid控件实现。

%-----------------------------

ycnzh 发言:

谢谢您的回复。我现在也是这样考虑的。我曾试着用画图的方法画出表格,虽然也能说得过去,终究不是很美观,用起来也不是很方便。用ActiveX控件是目前来说较好的选择,您说的这个控件是比较方便的一个。我正在调试,对于datagrid.m文件我再找找看。谢谢您的指点。关于matlab中使用ActiveX控件的问题,帮助中讲的比较笼统,比如,如何获得控件包含的属性,如何得到控件的ProgID等等,哪里有这方面较为详细的资料,还望您能再指点一下。谢谢!

% -----------------------------

wgcui 发言:

下面是我摸索出来的一个例子,你可以试一下。

figure('pos',[100 100 600 400]);

h=actxcontrol('MSFlexGridLib.MSFlexGrid.1',[0 1 400 400]);

nrow = 3;

ncol = 4;

data = rand(nrow,ncol); % you can adapt this line

h.Rows = nrow+1;

h.Cols = ncol+1;

for i=1:nrow

for j=1:ncol

h.Row = i;

h.Col = j;

h.Text = num2str(data(i,j));

end

end

使用get(h)获得控件的属性

使用invoke(h)获得控件的方法

使用events(h)获得控件的事件

上面的例子,就是通过get(h)得到的信息凑出来的。我用ActiveX的经验也不多,希望大家多多交流。

%-----------------------------

ycnzh 发言:

现在这个问题已经解决,我用了另外一个ActiveX控件,因为有的机器上Micorsoft Flex Grid控件没有注册,不能直接使用,不过您的提示很有启发。另外,向您推荐一本书,《MATLAB应用程序接口用户指南》,刘志俭编著,2000年出版。该书中对ActiveX控件编程介绍的相对来说比较详细。

对于ActiveX编程,感觉对于不同程序间进行接口还是很方便的,尤其对于界面制作,matlab本身带有的界面控件比较少,如果界面想做的精致必须另想办法。我觉得ActiveX控件是很好的选择之一。可惜对于ActiveX编程刚刚起步,所知甚少,和matlab配合使用时困难重重。尤其在matlab中,无法获得ActiveX控件各属性以及方法和事件的详细说明,比如get命令获得属性列表后,有些属性能猜出个大概,但很多属性不知道能起什么作用,invoke命令获得的方法也是如此。摸索着尝试实在效率低下。就我遇到的问题,现在看来其实不难,如果ActiveX控件的属性和方法等有详细的帮助,应该很快可以解决,而我在您的指点的基础上还用了将近三天的时间才基本解决。绝大多数时间用在对属性设置等方面的尝试上了。看来最好还是能有ActiveX控件的详细帮助文档配合,才是最佳方案。可是这些帮助文档哪里能找到?也许是要对ActiveX编程技术深入了解才行。希望以后能和多交流,共同进步。

再次感谢您的指点

分享:

a4c26d1e5885305701be709a3d33442f.png喜欢

0

a4c26d1e5885305701be709a3d33442f.png赠金笔

加载中,请稍候......

评论加载中,请稍候...

发评论

登录名: 密码: 找回密码 注册记住登录状态

昵   称:

评论并转载此博文

a4c26d1e5885305701be709a3d33442f.png

发评论

以上网友发言只代表其个人观点,不代表新浪网的观点或立场。

你可能感兴趣的文章
Java递归列出所有文件和文件夹
查看>>
[关于SQL]查询成绩都大于80分的学生
查看>>
Delphi(Tuxedo,BDE,ADO)三合一数据集组件HsTxQuery
查看>>
java之ibatis数据缓存
查看>>
“TNS-03505:无法解析名称”问题解决一例
查看>>
JVM源码分析之FinalReference完全解读
查看>>
LeetCode - Longest Common Prefix
查看>>
Android图片处理
查看>>
2015年第21本:万万没想到,用理工科思维理解世界
查看>>
大家谈谈公司里的项目经理角色及职责都是干什么的?
查看>>
剑指offer
查看>>
Velocity魔法堂系列二:VTL语法详解
查看>>
NopCommerce架构分析之八------多语言
查看>>
转:Eclipse自动补全功能轻松设置
查看>>
ES6新特性:Javascript中的Reflect对象
查看>>
hibernate逆向工程生成的实体映射需要修改
查看>>
mysql update操作
查看>>
Robots.txt - 禁止爬虫(转)
查看>>
MySQL数据库
查看>>
项目分析_xxoo-master
查看>>