Dim m As Object
Set m = CreateObject("matlab.application")
m.execute ("subplot(2,1,1);plot(x,sin(x))")
m.execute ("print_dbitmap")
Me.Picture1.Picture = Clipboard.GetData()程序如上,因为x没有给定取值范围,运行后matlab生成的截面快速的闪了下就没了
在vb里面则没有反应
如果将程序修改下Me.Picture1.Picture = Clipboard.GetData(m)
在matlab里就能看到绘制的图形了
然后在VB里面picture1里面看不到图形
只能看到很小的一个图标
请问是什么原因?
如果有空请大虾把matlab与vb混合编程的几种方法、思路和操作步骤及代码详细的提供一份
谢谢了

解决方案 »

  1.   


    呵呵
    Dim m As Object ' 这一句移到函数外面,也就是定义一个全局变量 m 应该就解决了
    Set m = CreateObject("matlab.application")
    m.execute ("subplot(2,1,1);plot(x,sin(x))")
    m.execute ("print_dbitmap")
    Me.Picture1.Picture = Clipboard.GetData() ' 这是对的,不可以用 Clipboard.GetData(m)
      

  2.   

    在VB里面picture1里面看不到图形,只能看到很小的一个图标
    是m.execute ("print_dbitmap") 这个命令的执行结果,与VB无关。