怎样能让程序暂时停一下??在线等,马上给分!

KDE 华为公司 2004-04-30 01:55:03
比如我在Form上画一个Botton
然后我运行程序,我想让程序在某处停下,然后我点击button后再继续运行
有这样的函数么?
反正有点象.bat文件里的pause这样的东西.
...全文
21 6 点赞 打赏 收藏 举报
写回复
6 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
youlooklook 2004-04-30
在主线程里Sleep一下不就可以吗?
  • 打赏
  • 举报
回复
lvjack 2004-04-30
同意 jishiping(JSP 季世平)

可以不用多线程,就是利用button的点击更改一个标志变量的问题,在循环中或开始前判断一个标志变量
  • 打赏
  • 举报
回复
jishiping 2004-04-30
你在Form里定义一个变量,在需要暂时停下的地方,将这个变量设为true,在点击Button时
将这个变量设为false。具体代码如下:
class TForm1 : public TForm
{
__published: // IDE-managed Components
TButton *Button1;
TButton *Button2;
void __fastcall Button1Click(TObject *Sender);
void __fastcall Button2Click(TObject *Sender);
private: // User declarations
bool Pause; //这儿定义一个变量
public: // User declarations
__fastcall TForm1(TComponent* Owner);
};

//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
: TForm(Owner)
{
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button1Click(TObject *Sender)
{
//......你的代码,比如:
ShowMessage("关闭这个消息框后,直到你"
"点击Button2才会执行后面的代码");

//下面暂停
for(Pause=true; Pause; Sleep(10)) {
Application->ProcessMessages();
}

//......继续执行你的代码,比如
ShowMessage("继续执行代码");
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button2Click(TObject *Sender)
{
Pause = false;
}
  • 打赏
  • 举报
回复
lihongxing2002 2004-04-30
看错。上面的不行。还是用线程,可以让线程挂起
  • 打赏
  • 举报
回复
lihongxing2002 2004-04-30
unsigned int tmp ;
tmp=1000 ;
Sleep(tmp);
  • 打赏
  • 举报
回复
我不懂电脑 2004-04-30
使用多线程,你可以暂时停一下线程
  • 打赏
  • 举报
回复
相关推荐
发帖
C++ Builder
加入

1.3w+

社区成员

C++ Builder相关内容讨论区
申请成为版主
帖子事件
创建了帖子
2004-04-30 01:55
社区公告
暂无公告