1. c语言中如何自定义背景图片,用什么函数呀,举个例子……
c语言中没有定义这样的函数,你只有将相关代码嵌套在画图的函数中,
通过调用来实现它……
2. vc++如何给窗体添加背景图片
三步。
第一步:
选好.bmp的类型的图片。在资源视图中导入。随便复制到.res文件夹下。
第二步。在对话框上添加picture控件,调整到大小。右击属性选择Type选择Bitmap.
Image下拉组合框选择你导入的图片。运行时即可显示图片。
如果要设置和窗体一样的大小SetWindowPos就可以了。查查这个函数的作用
3. c++ 怎么给对话框添加背景图片
用CImage类.
在onpaint()中
if(IsIconic())
{
.......//系统代码,不修改
}
else//在else中增加如下代码,对JPG,BMP,PNG(背景透明图片)有效
{
CRectrc;
GetClientRect(rc);
CImageimage;
image.Load(_T("c:\1.jpg"));//图片文件路径
if(image.GetBPP()==32)
{
inti;intj;
for(i=0;i<image.GetWidth();i++)
{
for(j=0;j<image.GetHeight();j++)
{
byte*pByte=(byte*)image.GetPixelAddress(i,j);
pByte[0]=pByte[0]*pByte[3]/255;
pByte[1]=pByte[1]*pByte[3]/255;
pByte[2]=pByte[2]*pByte[3]/255;
}
}
}
image.Draw(GetDC()->m_hDC,rc);
}
4. C语言怎么给程序添加背景图片最好是给个例子
C语言写控制台程序是无法加图片的,只能用哪个命令行输出,充其量设置下背景和字体,颜色之类的。
如果开发API窗口程序,完全依赖于操作系统。C语言本身并不提供这类函数。
5. vc++如何添加背景图片
方法有很多种,这里简单介绍三种,以修改对话框的背景为例。
方法一:
1、声明成员变量CBrush m_brush;
2、在InitDialog中添加代码:
CBitmap bmp;
bmp.LoadBitmap(IDB_BITMAP1); //这个IDB_BITMAP1要自己添加
m_brush.CreatePatternBrush(&bmp);
3、重载对话框的OnCtlColor,改最后的返回值:
return (HBRUSH)m_brush;
方法二:
把下面这段代码加进OnPaint()里就行了
CPaintDC dc(this);
CBitmap bitmap;
bitmap.LoadBitmap(IDB_BITMAP1); //这个IDB_BITMAP1要自己添加
CBrush brush;
brush.CreatePatternBrush(&bitmap);
CBrush* pOldBrush = dc.SelectObject(&brush);
dc.Rectangle(0,0,200,200); // 这些参数可以调整图片添加位置和大小
dc.SelectObject(pOldBrush);
方法三:使用StretchBlt()函数,具有图像自适应窗体功能
CPaintDC dc(this);
CBitmap m_bmpBK;
m_bmpBK.LoadBitmap(IDB_BITMAP1);
CRect rect;
GetClientRect(&rect);//获得目标尺寸,即窗口客户区的坐标
BITMAP bitMap;//位图结构体
m_bmpBK.GetBitmap(&bitMap);//获得原图片尺寸
CDC dcMem; //目标DC
dcMem.CreateCompatibleDC(&dc); //创建与dc兼容的内存DC
dcMem.SelectObject(&m_bmpBK);//将位图对象m_bmpBK选入内存DC
dc.StretchBlt(0,0,rect.Width(),rect.Height(),&dcMem,0,0,bitMap.bmWidth,bitMap.bmHeight,SRCCOPY);
6. C语言如何引用背景图片
1、C语言写控制台程序是无法加图片的,只能用命令行输出,最多就是设置下背景和字体,颜色之类的。如果开发API窗口程序,完全依赖于操作系统的函数库。C语言本身并不提供这类函数。
2、下面是windows系统下实现的函数代码,第一个参数是图片的存放的位置,第二个参数是窗口句柄。
HRESULTShowPic(char*lpstrFile,HWNDhWnd)
{
HDChDC_Temp=GetDC(hWnd);
IPicture*pPic;
IStream*pStm;
BOOLbResult;
HANDLEhFile=NULL;
DWORDdwFileSize,dwByteRead;
//打开图形文件
hFile=CreateFile(lpstrFile,GENERIC_READ,
FILE_SHARE_READ,NULL,OPEN_EXISTING,FILE_ATTRIBUTE_NORMAL,NULL);
if(hFile!=INVALID_HANDLE_VALUE)
{
dwFileSize=GetFileSize(hFile,NULL);//获取文件字节数
if(dwFileSize==0xFFFFFFFF)
returnE_FAIL;
}
else
{
returnE_FAIL;
}
//分配全局存储空间
HGLOBALhGlobal=GlobalAlloc(GMEM_MOVEABLE,dwFileSize);
LPVOIDpvData=NULL;
if(hGlobal==NULL)
returnE_FAIL;
if((pvData=GlobalLock(hGlobal))==NULL)//锁定分配内存块
returnE_FAIL;
ReadFile(hFile,pvData,dwFileSize,&dwByteRead,NULL);//把文件读入内存缓冲区
GlobalUnlock(hGlobal);
CreateStreamOnHGlobal(hGlobal,TRUE,&pStm);
//装入图形文件
bResult=OleLoadPicture(pStm,dwFileSize,TRUE,IID_IPicture,(LPVOID*)&pPic);
if(FAILED(bResult))
returnE_FAIL;
OLE_XSIZE_HIMETRIChmWidth;//图片的真实宽度,单位为英寸
OLE_YSIZE_HIMETRIChmHeight;//图片的真实高度,单位为英寸
pPic->get_Width(&hmWidth);
pPic->get_Height(&hmHeight);
//转换hmWidth和hmHeight为pixels距离,1英寸=25.4毫米
intnWidth=MulDiv(hmWidth,GetDeviceCaps(hDC_Temp,LOGPIXELSX),2540);
intnHeight=MulDiv(hmHeight,GetDeviceCaps(hDC_Temp,LOGPIXELSY),2540);
//将图形输出到屏幕上(有点像BitBlt)
bResult=pPic->Render(hDC_Temp,0,0,nWidth,nHeight,0,hmHeight,hmWidth,-hmHeight,NULL);
hmHeight,NULL);
pPic->Release();
CloseHandle(hFile);//关闭打开的文件
if(SUCCEEDED(bResult))
{
returnS_OK;
}
else
{
returnE_FAIL;
}
}
7. vc怎么在工具栏加背景图片
先从CToolBar派生一个类CSXBar(名字随便取啊)
头文件里(CSXBar.h)
classCSXBar:publicCToolBar
{
public:
...
protected:
//{{AFX_MSG(CSXBar)
afx_msgBOOLOnEraseBkgnd(CDC*pDC);//声明消息相应函数
//}}AFX_MSG
}
源文件里(CSXBar.cpp)
添加消息
BEGIN_MESSAGE_MAP(CSXBar,CToolBar)
//{{AFX_MSG_MAP(CSXBar)
ON_WM_ERASEBKGND()
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
添加消息相应函数
BOOLCSXBar::OnEraseBkgnd(CDC*pDC)
{
//TODO:/orcalldefault
CBitmapm_bk;
m_bk.LoadBitmap(IDB_BK);
CDCm_dcbk;
m_dcbk.CreateCompatibleDC(pDC);
BITMAPm_bkInfo;
m_bk.GetBitmap(&m_bkInfo);
m_dcbk.SelectObject(&m_bk);
CRectrect;
GetClientRect(&rect);
pDC->StretchBlt(0,0,rect.Width(),rect.Height(),&m_dcbk,0,0,m_bkInfo.bmWidth,m_bkInfo.bmHeight,SRCCOPY);
return1;
}
一个新的类就做好了
然后在MainFrame头文件里包涵自己的类头文件
#include"SXBar.h"
最后一步,将原来的
CToolBarm_wndToolBar;
改成
CSXBarm_wndToolBar;
就完工了
记住了,分四步:
派生新的类
添加消息响应
编写消息相应函数
调用新的类
8. C#用什么控件可以,添加动态图片.
首先图必须会动
然后直接添加到picbox里
或者代码pictureBox1.Image = Bitmap.FromFile(路径);
9. 如何使用c语言给编写的程序添加背景图片
C语言是控制台程序,都是黑底白字,要想加背景的话得自写图形库头文件,然后再加,呵呵