社区
C++ Builder
帖子详情
4张图片在一个Image控件中 依次交替显示,怎么实现??
htdl163
2007-05-21 02:40:04
A,B,C,D4张图片,想让他们在一个Image控件中 按顺序依次 显示,怎么实现?
即:在Image控件中 先显示A,过几秒中 在显示B,。。。。一直循环显示 ABCDABCD。。。。。。。。 谢谢啊
...全文
1053
21
打赏
收藏
4张图片在一个Image控件中 依次交替显示,怎么实现??
A,B,C,D4张图片,想让他们在一个Image控件中 按顺序依次 显示,怎么实现? 即:在Image控件中 先显示A,过几秒中 在显示B,。。。。一直循环显示 ABCDABCD。。。。。。。。 谢谢啊
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
21 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
huzhangyou
2007-05-22
打赏
举报
回复
Fireman_duck() 的代码是.net的
C#吧?猜测
huzhangyou
2007-05-22
打赏
举报
回复
to i_love_pc:
木说你哦 呵呵
表介意
MEFULEU
2007-05-22
打赏
举报
回复
楼上的代码怎么才能运行不出错~
Fireman_duck
2007-05-22
打赏
举报
回复
Bitmap[] bt=new Bitmap{new Bitmap(20,20),new Bitmap(20,20),new Bitmpa(20,20),new Bitmap(20,20)}
int i=0;
while (true)
{
Graphics g=From1.CreateGraphics();
if(i==4)
i=0;
else
i++;
g.DrawImage(bt[i]);
Sleep(1000);
}
shao99
2007-05-22
打赏
举报
回复
搞四个Image,随时显示好了
rainv
2007-05-22
打赏
举报
回复
mark
i_love_pc
2007-05-22
打赏
举报
回复
呵呵,那信仰哥来个不使用控件的吧!!
huzhangyou
2007-05-22
打赏
举报
回复
一堆 只知道使用控件的高手......
jacknes009
2007-05-22
打赏
举报
回复
正如chiangpiong(蓝色等待) 所说的
在Form放置一个TImageList控件,一个TTimer控件,一个TImage控件
双击TImageList控件,加入ABCD四张图片
双击TTimer控件,写入如下代码:
void __fastcall TForm1::Timer1Timer(TObject *Sender)
{
Image1->Picture->Assign(NULL);
ImageList1->GetBitmap(Image1->Tag,Image1->Picture->Bitmap);
Image1->Tag=((Image1->Tag+1)%4);
}
但另外要注意下TImageList控件宽高要设置下最好设置成ABCD四张图片的宽高那样图片才好看点
huzhangyou
2007-05-22
打赏
举报
回复
faint!白打了,BS CSDN,丢了不能回退。
to sj2521(探路者):
不知道您是否懂得Ajax.
Ajax是 XML + JavaScript结合的产物
是一种异步请求数据的方法
和这里没有任何关系
希望不要误导他人。
纯属讨论,木责骂吵架的意思。见谅。
天涯倦客
2007-05-22
打赏
举报
回复
TImageList省事些
gdi+ 也可。。
sj2521
2007-05-22
打赏
举报
回复
用ajax岂不是更简单
i_love_pc
2007-05-22
打赏
举报
回复
~!~
呵呵,知道,虽然我使用控件但不是高手。
chiangpiong
2007-05-21
打赏
举报
回复
没有必要那么复杂吧?下面的方法,可以试试看:
在Form放置一个TImageList控件,一个TTimer控件,一个TImage控件
双击TImageList控件,加入ABCD四张图片
双击TTimer控件,写入如下代码:
void __fastcall TForm1::Timer1Timer(TObject *Sender)
{
Image1->Picture->Assign(NULL);
ImageList1->GetBitmap(Image1->Tag,Image1->Picture->Bitmap);
Image1->Tag=((Image1->Tag+1)%4);
}
以上方法,在C++Builder6.0下面已经通过测试
huzhangyou
2007-05-21
打赏
举报
回复
代码下载地址:
http://www.libing.net.cn/read.php/1174.htm
huzhangyou
2007-05-21
打赏
举报
回复
//---------------------------------------------------------------------------
#include <vcl.h>
#pragma hdrstop
#include "Unit1.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm1 *Form1;
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
: TForm(Owner)
{
}
//---------------------------------------------------------------------------
void __fastcall TForm1::FormCreate(TObject *Sender)
{
n = 0;
Graphics::TBitmap *Bitmap1 = new Graphics::TBitmap();
Bitmap1->LoadFromFile("C:\\A.bmp");
PBitmapVec.push_back(Bitmap1);
Graphics::TBitmap *Bitmap2 = new Graphics::TBitmap();
Bitmap2->LoadFromFile("C:\\B.bmp");
PBitmapVec.push_back(Bitmap2);
Graphics::TBitmap *Bitmap3 = new Graphics::TBitmap();
Bitmap3->LoadFromFile("C:\\C.bmp");
PBitmapVec.push_back(Bitmap3);
Graphics::TBitmap *Bitmap4 = new Graphics::TBitmap();
Bitmap4->LoadFromFile("C:\\D.bmp");
PBitmapVec.push_back(Bitmap4);
//Image1->Picture->Assign();
}
//---------------------------------------------------------------------------
void __fastcall TForm1::FormClose(TObject *Sender, TCloseAction &Action)
{
vector<Graphics::TBitmap* >::iterator iter;
for(iter = PBitmapVec.begin() ; iter != PBitmapVec.end() ; ++iter){
delete (*iter);
(*iter) = NULL;
}
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Timer1Timer(TObject *Sender)
{
/*
switch(n%4)
{
case 0:
Image1->Picture->Assign(PBitmapVec.operator [](n));
break;
case 1:
Image1->Picture->LoadFromFile("c:\B.bmp");
break;
case 2:
Image1->Picture->LoadFromFile("c:\C.bmp");
break;
case 3:
Image1->Picture->LoadFromFile("c:\D.bmp");
break;
default:break;
}
*/
Image1->Picture->Assign(PBitmapVec.operator [](n%4));
n++;
if(n==4)
n=0;
//Image1->Picture->Assign();
}
//---------------------------------------------------------------------------
huzhangyou
2007-05-21
打赏
举报
回复
休息的时间帮你实现了
//---------------------------------------------------------------------------
#ifndef Unit1H
#define Unit1H
//---------------------------------------------------------------------------
#include <Classes.hpp>
#include <Controls.hpp>
#include <StdCtrls.hpp>
#include <Forms.hpp>
#include <ExtCtrls.hpp>
#include <vector>
using namespace std;
//---------------------------------------------------------------------------
class TForm1 : public TForm
{
__published: // IDE-managed Components
TImage *Image1;
TTimer *Timer1;
void __fastcall FormCreate(TObject *Sender);
void __fastcall FormClose(TObject *Sender, TCloseAction &Action);
void __fastcall Timer1Timer(TObject *Sender);
private: // User declarations
public: // User declarations
__fastcall TForm1(TComponent* Owner);
vector<Graphics::TBitmap* > PBitmapVec;
int n;
};
//---------------------------------------------------------------------------
extern PACKAGE TForm1 *Form1;
//---------------------------------------------------------------------------
#endif
huzhangyou
2007-05-21
打赏
举报
回复
可以使用TBitmap先加载到内存中
然后Assign就可以了
效率会好很多
这样的确会有效率问题
constantine
2007-05-21
打赏
举报
回复
建议不要每次都loadfromfile,利用visible控制好过,不然就用bmp先load,image做个循环放这个bmp。
i_love_pc
2007-05-21
打赏
举报
回复
修改一下
int n=0;
//设置Timer1的Interval
void __fastcall TForm1::Timer1Timer(TObject *Sender)
{
switch(n%4)
{
case 0:
Image1->Picture->LoadFromFile("c:\A.bmp");
break;
case 1:
Image1->Picture->LoadFromFile("c:\B.bmp");
break;
case 2:
Image1->Picture->LoadFromFile("c:\C.bmp");
break;
case 3:
Image1->Picture->LoadFromFile("c:\D.bmp");
break;
default:break;
}
n++;
if(n==4)
n=0;
}
加载更多回复(1)
androidStudio
中
利用图形切换
控件
中
轮流
显示
图片
,并有慢进慢出的动画效果
利用图形切换
控件
中
轮流
显示
图片
,并有慢进慢出的动画效果 (一)、图形切换
控件
轮流
显示
图片
步骤如下: 1、既然要设置图形切换
控件
,首先我们得设计自己的界面,将图形切换
控件
布置到我们的页面上面,设计的XML的...
如何在VB
中
避免动态刷新
图片
时的闪烁问题
VB
中
实现
一个
动态的图形,一般可使用控制几个图形
控件
的Visible属性的True或者False
交替
来
实现
,但是这样会出现图形在更新
中
闪烁的问题。虽然可以用双缓冲的办法来
实现
不闪烁,但是比较麻烦。其实有最简单有效的办法...
用C#做
图片
轮播效果
用C#做
图片
轮播效果 老帅 在C#
中
做
图片
轮播效果,不借助第三方
控件
,也是可以
实现
的。使用PictureBox作为
图片
展示容器就可以。但是
图片
列别放在什么地方,如何加载,需要考虑一下! 1.首先排除
Image
List 因为...
WPF自定义虚线树形
控件
实现
详解
在现代WPF开发
中
,自定义
控件
是
实现
高度可复用、可扩展UI组件的核心技术。WPF通过逻辑树与可视树的分离机制,
实现
了界面结构与视觉表现的解耦,使得
控件
模板(ControlTemplate)可以完全重写而不影响其行为逻辑。...
WPF
中
显示
图形的方式深度解析
在 WPF 开发
中
,Drawing
Image
、Shape、
Image
、GeometryDrawing、DrawingBrush 和 VisualBrush 这些
控件
为创建丰富多样的图形界面提供了强大的支持。它们各自具有独特的特点和适用场景,开发者可以根据具体需求灵活...
C++ Builder
13,874
社区成员
102,696
社区内容
发帖
与我相关
我的任务
C++ Builder
C++ Builder相关内容讨论区
复制链接
扫一扫
分享
社区描述
C++ Builder相关内容讨论区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章