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

KDE 2004-04-30 01:55:03
比如我在Form上画一个Botton
然后我运行程序,我想让程序在某处停下,然后我点击button后再继续运行
有这样的函数么?
反正有点象.bat文件里的pause这样的东西.
...全文
60 6 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
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
  • 打赏
  • 举报
回复
使用多线程,你可以暂时停一下线程

13,871

社区成员

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

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