备份数据库的同时在界面上显示GIF动画

啊兵 广东新粤交通投资有限公司 2008-12-08 09:21:17
备份数据库的同时在界面上显示GIF动画

一个窗体AA
AA里面有一个pictureBox1,并且pictureBox1的image有一张GIF动画(能正常运行)
有一个方法BackData()备份数据库

AA窗体加载的时候pictureBox1是隐藏的,当执行备份按钮后,BackData()和显示图片同时进行,我用线处理了备份数据库的同时Gif动画不能动起来。

大家帮帮我吧!

有实例并且能实现功能的会多给分的。
...全文
179 点赞 收藏 32
写回复
32 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
啊兵 2008-12-11
不论有没有人给满意答案,今天晚上十二点之前结贴。
回复
topycsdn 2008-12-10
System.Windows.Forms.Application.DoEvents();
用这句就行了。
回复
啊兵 2008-12-10
看来得把分数加到200去
回复
冷月孤峰 2008-12-09
http://topic.csdn.net/u/20080528/16/FA79FDE8-1A2D-4DC0-80D9-CA311BE513A7.html
http://topic.csdn.net/u/20080425/15/AC6C78DE-1AEC-4B22-A7F0-67151E46683F.html
回复
justindreams 2008-12-09
图片太小了,看不清楚啊
回复
啊兵 2008-12-09
那位哥哥能给我一个实例
回复
abcniu 2008-12-08
是用多线程就可以了,单开一个线程进行备份
回复
wangping_li 2008-12-08
用BackgroundWorker好
采用线程模式处理的
回复
winsei 2008-12-08
windorm-->winform
回复
winsei 2008-12-08
[Quote=引用 4 楼 hs1983 的回复:]
这个应该和你的要求有点类似

HTML code<asp:UpdatePanel ID="UpdatePanel1" runat="server" UpdateMode="Conditional">
<ContentTemplate>
...
</ContentTemplate>
</asp:UpdatePanel>

<asp:UpdateProgress ID="UpdateProgress1" AssociatedUpdatePanelID="UpdatePanel1" runat="server">
<ProgressTemplate>
<center>
<img alt="" src="../images/loading.gif" …
[/Quote]
========================================
拜托,人家是windorm的
回复
51Crack 2008-12-08
进来学习!
回复
lh2907883 2008-12-08
不要使用pictureBox,用label就可以了
回复
Tomato77 2008-12-08
mark
回复
啊兵 2008-12-08
[Quote=引用 9 楼 justindreams 的回复:]
C# code
public delegate void RefreshDlg();
private void button1_Click(object sender, EventArgs e)
{
this.pictureBox1.Visible = true;
ThreadStart ts = new ThreadStart(DoBackUp);
Thread myThread = new Thread(ts);
// 可以编译通过,执行时出错 myThread.Start();
}

void DoBackUp()
{
//这里是你的备份数据库的方法…
[/Quote]
回复
hangang7403 2008-12-08
up
回复
justindreams 2008-12-08

public delegate void RefreshDlg();
private void button1_Click(object sender, EventArgs e)
{
this.pictureBox1.Visible = true;
ThreadStart ts = new ThreadStart(DoBackUp);
Thread myThread = new Thread(ts);
myThread.Start();
}

void DoBackUp()
{
//这里是你的备份数据库的方法
SetGif();
}

void SetGif()
{
if (this.pictureBox1.InvokeRequired)
{
RefreshDlg refreshdlg = new RefreshDlg(SetGif);
this.Invoke(refreshdlg);
}
else
{
this.pictureBox1.Visible = false;
}
}



回复
killer_liqiao 2008-12-08
up
回复
啊兵 2008-12-08
[Quote=引用 3 楼 justindreams 的回复:]
用多线程吧
备份数据库用子线程来做,显示gif在主线程
当备份完毕以后,通过委托的方式,来通知主线程gif隐藏。
[/Quote]

可以给一个简单的实例吗?
回复
啊兵 2008-12-08
[Quote=引用 2 楼 rqx110 的回复:]
给你个源代码 http://mail.foxmail.com/cgi-bin/exs_download?uin=1014241&svrid=205&fid=dcb12baa4c455c50c8d6c9f60fa9edd08ffddc2fb781e846&code=55812944

7天内有效哦!
[/Quote]

大哥你给的是VB的。。。。
回复
wuyq11 2008-12-08
System.Reflection.Assembly thisExe;
thisExe = System.Reflection.Assembly.GetExecutingAssembly();
System.IO.Stream file = thisExe.GetManifestResourceStream("1.jpg");

this.pictureBox1.Image = Image.FromStream(file);
参考
http://blog.csdn.net/chenjl1031/archive/2008/05/04/2383674.aspx
回复
加载更多回复
相关推荐
发帖
C#
创建于2007-09-28

10.5w+

社区成员

.NET技术 C#
申请成为版主
帖子事件
创建了帖子
2008-12-08 09:21
社区公告

让您成为最强悍的C#开发者