背景图片的问题

tccsdn 2004-03-15 12:23:35
有什么办法可以把一张JPG的图片做成窗口的背景呢
...全文
76 17 打赏 收藏 转发到动态 举报
写回复
用AI写文章
17 条回复
切换为时间正序
请发表友善的回复…
发表回复
xiaoshi0 2004-03-17
  • 打赏
  • 举报
回复
在窗体的OnPaint事件中输入如下代码:
TGraphic::TBitmap *bitmap = new TGraphic::TBitmap;
bitmap->LoadFromFile(FileName); //FileName为图片文件名
Canvas->Draw(0, 0, bitmap);
delete bitmap;
PS:尽量保证图片和窗体一样大.
Rurama 2004-03-17
  • 打赏
  • 举报
回复
头文件中生明只变量
TJPEGImage *pJpg;
cpp中写入此代码
void __fastcall TForm1::FormCreate(TObject *Sender)
{
pJpg=new TJPEGImage;

pJpg->LoadFromFile(".....");
Graphics::TBitmap *pBmp = new Graphics::TBitmap();
pBmp->Assign(pJpg);
this->Brush->Bitmap=pBmp;
}
在close中释放变量
delete pJpg;
在窗体的onpaint中写入此代码则窗体后时时都在执行此人码,在create中写入此代码则会在改变窗体大小时发生图片没有画全的现像,建议你若改变窗体大小时传个消息给它,让窗体重画。
BCB(天下三分明月夜,二分无赖是扬州) 所说的问题我怀疑是因为内存没有释放,不知有没有试过释放内存后是否出现此情况。
lilige 2004-03-17
  • 打赏
  • 举报
回复
Button上能不能画图片?我可没有说BitBtn
tccsdn 2004-03-17
  • 打赏
  • 举报
回复
如果是JPG的图片怎么画呢
pp616 2004-03-17
  • 打赏
  • 举报
回复
好的方法是把背景做成资源。然后直接在窗口DC上画。这样比较快。
ljb198102 2004-03-16
  • 打赏
  • 举报
回复
如果是用画板画背景那就太累了
ljb198102 2004-03-16
  • 打赏
  • 举报
回复
真不知道除此之外还有其他办法吗?
GeoPhoenix 2004-03-16
  • 打赏
  • 举报
回复
结合pp616(傻小子) 的方法,在参照下面的贴子就可以使用bmp和jpg图片当背景了,比较方便
http://expert.csdn.net/Expert/topic/2713/2713367.xml?temp=.7972834
BCB 2004-03-16
  • 打赏
  • 举报
回复
慎用pp616(傻小子) 的方法,以前我常用,程序在某些机上
常出现与显卡有关的致命错误,一头雾水.
后来去掉了这些花哨的方法,不再出现错误


BCB 2004-03-16
  • 打赏
  • 举报
回复
pp616(傻小子) 的方法
tccsdn 2004-03-16
  • 打赏
  • 举报
回复
现在的问题基本上解决了,但不是彻底的解决,我是用pp616(傻小子) 方法变通了一下,因为安装程序是自己写的,所以在安装的时候把JPG文件以文件的方式保存下来了,
先pBmp->SaveToFile()再pBmp->LoadFromFile()
请问BCB(天下三分明月夜,二分无赖是扬州) 你说的那问题应该是pBmp->Assign(pJpg);估计应该是这里出的问题吧,谁还有好的办法啊?
Chimae 2004-03-15
  • 打赏
  • 举报
回复
同意pp616(傻小子),先将JPG转换成BMP。
我不懂电脑 2004-03-15
  • 打赏
  • 举报
回复
同意xjq2003(xjq2003)
pp616 2004-03-15
  • 打赏
  • 举报
回复
void __fastcall TForm1::FormCreate(TObject *Sender)
{
TJPEGImage *pJpg=new TJPEGImage;
pJpg->LoadFromFile(".....");
Graphics::TBitmap *pBmp = new Graphics::TBitmap();
pBmp->Assign(pJpg);
this->Brush->Bitmap=pBmp;
}
xjq2003 2004-03-15
  • 打赏
  • 举报
回复
我有个比较笨的办法啊
在你的FORM上家IMAGE控件,把IMAGE的**属性设置为占用整个FORM大小
不知道符合你的要求吗??
tccsdn 2004-03-15
  • 打赏
  • 举报
回复
呵呵,我就是不想用IMAGE控件啊,感觉比较占资源,也比较慢,图片比较多,BMP的图片感觉又太大了,发布起来不方便,pp616(傻小子) 的方法不知道速度怎么样,先试下看看效果
大家还有什么好的方法吗?
yjy1001 2004-03-15
  • 打赏
  • 举报
回复
同意一楼

13,825

社区成员

发帖
与我相关
我的任务
社区描述
C++ Builder相关内容讨论区
社区管理员
  • 基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧