private sub command_click()
objectpicture=loadpicture(这里放你的位置)'字符串型
end sub
其中object 可以是 image1 picture1 me
你看下,一般有picture这个属性的控件,都能这样!
大致讲下:
采用vb调用matlab自动化服务器的方法
1)让matlab成为vb的一个application
2)执行相关的画图程序。
3)由于画的图在内存中,vb有个可以调用剪贴板的指令,直接获取剪贴板的了。
4)在vb中,将获取的数据赋值给控件。
给个例子:
代码如下:
Private Sub Form_Load()
Set MATLAB = CreateObject("Matlabapplication")
MATLABexecute ("N=1024;n=0:N-1;t=n/12800;q=n12800/1024;w=2pi50;")
MATLABexecute ("x=220cos(wt+042)+10cos(3wt+08)+5cos(5wt+04)+3cos(7wt+065)+2cos(9wt+03)+18cos(11wt+036);")
MATLABexecute ("set(gcf,'visible','off'),plot(t,x,'b');axis([0,008,-320,320]);grid on;xlabel('时间/S');ylabel('幅值/V');")
MATLABexecute ("title('原始信号');set(gcf,'color','w');print(gcf,'-dmeta')")
sinwavePicture = ClipboardGetData()
MATLABexecute ("y=fft(x);set(gcf,'visible','off');bar(q(1:48),2abs(y(1:48))/N);xlabel('频率/Hz');")
MATLABexecute ("grid on;set(gcf,'color','w');set(gca,'XTickMode','manual','XTick',[0,50,150,250,350,450,550]);print(gcf,'-dmeta');")
spectrumwavePicture = ClipboardGetData()
End Sub
代码解释下:
sinwavePicture = ClipboardGetData()
左边是vb的控件,右边是获取剪贴板的数据,让其在vb中显示。
本实例中有两个控件:sinwavePicture,spectrumwavePicture。
1、打开VB60开发软件,新建一个标准exe工程;
2、在设计界面上添加一个Picturebox控件;
3、双击添加的Picturebox控件,进入代码编辑界面,输入如下代码:
Private Sub Picture1_Click()Picture1Print "显示框"
End Sub
4、运行工程,单击框,可以看到框内出现了“显示框”的显示。
你可以弄两个窗体,一个最小化,一个在屏幕中央显示,之后把窗体弄成透明的就可以了,你看到的时候就只有,没有边框和标题栏什么的。最后弄成置顶就可以了。如果还不懂,可以找我要,我做个好的给你。
Private Sub Command1_Click()
CommonDialog1ShowOpen
Picture1Picture = LoadPicture(CommonDialog1FileName)
End Sub
假设你的路径为d:\fafagif,代码如下:
Private Sub Form_Click()
Picture1Picture = IIf(Picture1Picture = LoadPicture(""), LoadPicture("d:\fafagif"), LoadPicture(""))
End Sub
这样就可以单击切换了,对了,你要加一个框控件,再写入代码
以上就是关于如何用VB在窗体上显示图片全部的内容,包括:如何用VB在窗体上显示图片、如何用vb调用MATLAB编程所得到的图片,并将图片显示在vb的窗体界面上、在vb程序设计中,单击图片框时在图片框中显视"单击图片框"如何编写代码实现这一过程等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)