visual studio 怎么在窗体添加图片

visual studio 怎么在窗体添加图片,第1张

1、打开你的VS,创建一个WPF窗体程序。

2、创建好的WPF窗体程序是这样的。

3、在视图——属性窗口中调图窗体程序的属性,在属性的画笔栏中可以更改窗体程序的背景。

4、然后按键F5调试窗口看一下。

5、如果我想将WPF程序背景更改为任何一张其他的图片,如左图的枫叶。

6、可以看到我们的图片与应用程序的窗体大小不一致,我们只需要调节在图片边缘中部那里调整就行了。

7、修改好的图片就出来了,再按键F5调试运行一下看看。

第一步:

选好.bmp的类型的图片。在资源视图中导入。随便复制到.res文件夹下。

第二步。在对话框上添加picture控件,调整到大小。右击属性选择Type选择Bitmap.

Image下拉组合框选择你导入的图片。运行时即可显示图片。

如果要设置和窗体一样的大小SetWindowPos就可以了。查查这个函数的作用

利用

COM接口

实现。

void

DisplayImage(HDC

hDC,

LPCTSTR

szImagePath)

{

HANDLE

hFile=

CreateFile

(szImagePath,

GENERIC_READ,

FILE_SHARE_READ,

NULL,

OPEN_EXISTING,

FILE_

ATTRIBUTE

_NORMAL,

NULL)

//从指定的路径szImagePath中读取文件

句柄

DWORD

dwFileSize=

GetFileSize

(hFile,

NULL)

//获得图片文件的大小,用来分配全局内存

HGLOBAL

hImageMemory=

GlobalAlloc

(GMEM_MOVEABLE,

dwFileSize)

//给图片分配全局内存

void

*pImageMemory=

GlobalLock

(hImageMemory)

//锁定内存

DWORD

dwReadedSize

//保存实际读取的文件大小

ReadFile(hFile,

pImageMemory,

dwFileSize,

&dwReadedSize,

NULL)

//读取图片到全局内存当中

GlobalUnlock

(hImageMemory)

//解锁内存

CloseHandle

(hFile)

//关闭文件句柄

IStream

*pIStream//创建一个IStream接口指针,用来保存图片流

IPicture

*pIPicture//创建一个IPicture接口指针,表示图片对象

CreateStreamOnHGlobal(hImageMemory,

false,

&pIStream)

//用全局内存初使化IStream接口指针

OleLoadPicture(pIStream,

0,

false,

IID_IPicture,

(LPVOID*)&(pIPicture))//用OleLoadPicture获得IPicture接口指针

//得到IPicture

COM接口对象后,你就可以进行获得图片信息、显示图片等 *** 作

OLE_XSIZE_HIMETRIC

hmWidth

LE_YSIZE_HIMETRIC

hmHeight

pIPicture->get_Width(&hmWidth)

//用接口方法获得图片的宽和高

pIPicture->get_Height(&hmHeight)

pIPicture->Render(hDC,0,0,100,100,0,hmHeight,hmWidth,-hmHeight,NULL)

//在指定的DC上绘出图片

GlobalFree(hImageMemory)

//释放全局内存

pIStream->Release()

//释放pIStream

pIPicture->Release()

//释放pIPicture

}


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/bake/11840904.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-19
下一篇 2023-05-19

发表评论

登录后才能评论

评论列表(0条)

保存