如何让程序等待一个事件的触发

纯净水o 2010-04-15 02:09:24
procedure TForm1.FormCreate(Sender: TObject);
var
i,j,k:Integer;
ar:array of Integer;
begin
memo1.Text:='请输入开辟空间大小';
//********************这里等待按下button在继续运行接下来的程序
i:=StrToInt(edit1.Text);
SetLength(ar,i);
end;


应该如何做呢?
...全文
157 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
ffwin 2010-04-15
  • 打赏
  • 举报
回复
要是我,我就这么做
我设一变量,a:boolean

把 继续运行接下来的程序 做成一个 procedure

程序在按钮部分给 逻辑变量赋值,是否按下 决定 a 的真假


按照真或假的情况再运行 procedure 里的部分

这样CPU的效率也高一些,不知是否可行
纯净水o 2010-04-15
  • 打赏
  • 举报
回复
楼上的方法不错
金卯刀 2010-04-15
  • 打赏
  • 举报
回复

var
NewString : string;//接收值...
...
begin
...
if InputQuery('Input Box', '请输入开辟空间大小', NewString) then
...

风之谷 2010-04-15
  • 打赏
  • 举报
回复
写死循环 用application.handlemessage;获取信息

while true do
begin
if xxxx then
breakl;
application.handlemessage;
end;

不影响程序运行 但是如果里面牵扯到对象的话,可能在程序关闭时循环还没结束,仍然要调用对象,可能会报错,这块小心点
hongss 2010-04-15
  • 打赏
  • 举报
回复
“等待按下button”,这个Button里加个Flag,初始False,按下Button变True;

在你需要的这个地方加个Timer,
你需要的“接下来的程序”,写在Timer里,判断Flag,若Flag为True执行你“接下来的程序”

5,388

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 开发及应用
社区管理员
  • VCL组件开发及应用社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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