看看这个,能不能这样?(50分)

  • 主题发起人 主题发起人 Rik
  • 开始时间 开始时间
R

Rik

Unregistered / Unconfirmed
GUEST, unregistred user!
1,我想做一个无窗体程序,如何在这个程序中加入Timer控件或者如何做到与Timer控件相同的方法?
2,为什么我做的一个无窗体程序一运行就结束了?
 
可能你点的是一个console程序,你可以
{$apptype ;console}

你可以直接新建一个工程,然后去掉form就可以了。
至于timer
应该可以声明吧。一般都是create
 
也可以在工程文件中加入
begin
......
application.showmainform:=false;
......
end;
在FORM1上放你需要的控件。
OK?
 
“为什么我做的一个无窗体程序一运行就结束了?”
这个问题应该有多种可能!
1> 程序已经运行结束!
2> Timer过程调用有误!
3> console本身过程代码有错!
......

不知道你的console是怎么写的?一个标准的console程序示例如下:
  Program ConsoleHELLO;
  uses
  sysutils;
  begin
   writeln(''''现在是北京时间:''''+TimeToStr(Time));
  end;
 
好象是不应该在IDE模式下调试该程序,应该在DOS窗口中测试[:D]
 
>“为什么我做的一个无窗体程序一运行就结束了?”
呵呵,因为他没有进行消息循环,所以一运行就结束了。
 
呵呵!可以加上一句:ReadLn嘛!如:
program Project2;
{$APPTYPE CONSOLE}
uses SysUtils;

begin
; writeln('''现在是北京时间:'''+TimeToStr(Time));
; ReadLn;
end.
;这样就可以看输出了嘛!看完后按回车返回!(也可以用read,按任意键返回)
 
谁能回答一下的一个问题?
 
到底你的无窗体程序是指什么?如果是没有窗口的话不能用TTimer,
可以用timeSetEvent函数(在mmsystem.pas)
 
clyin,是没有窗口的,能教教我怎么使用timeSetEvent吗?
 
没窗口也可以用timer,只是你要自己写消息循环,不能依靠Application.Run
还有啊,你要自己判断什么时候该退出
 
能写段代码让我看看吗?
 
你在上述代码后加一句
application.Terminate
试试
 
没有窗口时要:
while GetMessage(msg, 0, 0, 0) do
; DispatchMessag(msg);

自己处理消息,
 
多人接受答案了。
 
后退
顶部