关于winfrom窗体的问题。

Threadadd 2006-05-15 01:55:36
主窗体form1,执行下面按钮
private void Button1_Click(...)
{
//开始执行do()之前弹出一个form2

this.do()//执行相应的操作

//前面的do()执行完了,就关闭 form2窗体
}

我想要上面的效果,我现在弹出FORM2就不去执行form1里面的do();
...全文
362 25 打赏 收藏 转发到动态 举报
写回复
用AI写文章
25 条回复
切换为时间正序
请发表友善的回复…
发表回复
hawk234 2006-05-16
  • 打赏
  • 举报
回复
up
Threadadd 2006-05-15
  • 打赏
  • 举报
回复
算了!问题还是没有解决,开始还可以运行下,多点几次就行了!结了!
itmingong 2006-05-15
  • 打赏
  • 举报
回复
mark
Threadadd 2006-05-15
  • 打赏
  • 举报
回复
to:tjvictor()
5:30结~ ,相信我!ok
Threadadd 2006-05-15
  • 打赏
  • 举报
回复
to:tjvictor() --
thread.Abort();这个有点问题!那个线程挂起啊?
灰太狼 2006-05-15
  • 打赏
  • 举报
回复
不給分,下次不回了
marvelstack 2006-05-15
  • 打赏
  • 举报
回复
Windows窗体间的数据交互
http://blog.csdn.net/zhzuo/archive/2004/04/05/22027.aspx
http://blog.csdn.net/zhzuo/archive/2006/05/05/708941.aspx
shimeitang 2006-05-15
  • 打赏
  • 举报
回复
楼上的两位真是好淫啊~~~~
灰太狼 2006-05-15
  • 打赏
  • 举报
回复
給我點分吧,上面寫錯了,哈哈,太忙了!
AlphaGroup 2006-05-15
  • 打赏
  • 举报
回复
System.Threading.Thread t = new System.Threading.Thread(
new System.Threading.ThreadStart(ShowDlg));

private static void ShowDlg()
{
frmTest2 frm = new frmTest2();
frm.ShowDialog();
}

private void button1_Click(object sender, EventArgs e)
{
//开始执行do()之前弹出一个form2
t.Start();

this.do()//执行相应的操作

//前面的do()执行完了,就关闭 form2窗体

t.Abort();
}
灰太狼 2006-05-15
  • 打赏
  • 举报
回复
定義全局private Thread thread;
然後加一個窗體form2,在form1中加一個button.
他們的代碼如下
private void button1_Click(object sender, System.EventArgs e)
{
this.Enabled=false; // form1無效;

thread = new Thread( new ThreadStart(dothis));// 啟動線程
thread.Start();

}

private void dothis()
{

Form2 ttt = new Form2();
ttt.Show();
//your job;
System.Threading.Thread.Sleep(5000);//為了有效果才sleep的,這裡是你要做的工作。
this.Enabled = true;//form1有效;
ttt.Dispose();
thread.Abort();
}
注意要有using System.Threading;
看看是不是你要的效果,時候太短,沒有好好做,你自己再看看吧,給我點吧。哈哈。
灰太狼 2006-05-15
  • 打赏
  • 举报
回复
我給你試試多線程的方法,你等會,我先編一個試試
Threadadd 2006-05-15
  • 打赏
  • 举报
回复
to:tjvictor()
要是能实现那自然好!
×_×
Threadadd 2006-05-15
  • 打赏
  • 举报
回复
多谢各位关心!能不能给除点具体的代码!
灰太狼 2006-05-15
  • 打赏
  • 举报
回复
form2.ShowDialog(),然後把你的this.do()要完成的工作放到form2中執行,怎麼樣?
liujiwe79 2006-05-15
  • 打赏
  • 举报
回复
这个估计要采用多线程机制吧,相当于进度条一样,后台一直在执行
viena 2006-05-15
  • 打赏
  • 举报
回复
这个没必要弹出窗体吧,直接在窗体里面显示
Threadadd 2006-05-15
  • 打赏
  • 举报
回复
起始我就是想加个效果,让程序执行的时候弹出一个“正在处理..."的!效果,然后等程序执行完了,再关闭这个窗体!
灰太狼 2006-05-15
  • 打赏
  • 举报
回复
你的想法是隻能用委托了,還有多線程,要不你把你的需求寫得詳細點,我給你想一個另外的方法去解決,現在這條路怕是隻有多線程可以了。
Threadadd 2006-05-15
  • 打赏
  • 举报
回复
to:viena(EQ<0)
我试了不行,它只操作了一下就结束了!
加载更多回复(4)

110,537

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

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

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