Форум: "KOL";
Текущий архив: 2003.05.05;
Скачать: [xml.tar.bz2];
Внизгде грабли? delphi и система виснут при попытке закр. программы Найти похожие ветки
← →
zetta (2002-07-11 10:59) [0]вот исходник:
program Project2;
uses Windows,
messages,kol;
{$R *.RES}
var
form:PControl;
Function bgproc( var Msg: TMsg; var Rslt: Integer ): Boolean;
begin form.canvas.moveto(random(100),random(100));
form.canvas.lineto(random(100),random(100));sleep(20);
bgproc:=false;
end;
procedure onclosemethod(sender:pobj;var accept:boolean);
begin
applet.close;
end;
begin
form:=NewForm(Applet,"Пример");form.onclose:=Toneventaccept(MakeMethod(nil,@onclosemethod));
form.onmessage:=TOnMessage(MakeMethod(nil,@bgproc));
run(form);
end.
← →
Gandalf (2002-07-11 12:04) [1]Грабли в событии OnMessage. Попробуй в OnMessage, отдельно случай WM_CLOSE или WM_DESTROY обработать.
← →
BorisMor (2002-07-11 12:15) [2]Вобще то (конечно IMHO :) лучше рисовать эти линии по таймеру, а ни вешать все это на обработку сообщений.
← →
zetta (2002-07-11 13:24) [3]а как по таймеру?
в реальном проекте там чтение строки из файла, обработка, запись строки в другой файл, нарисовать индикатор и так до самого eof.
← →
zetta (2002-07-11 13:38) [4]WM_CLOSE или WM_DESTROY обрабатывать как applet.close?
← →
BorisMor (2002-07-11 13:58) [5]> zetta
> а как по таймеру?
Вот у Кладова на странице пример.
http://xcl.cjb.net/adv.zip
← →
Vladimir Kladov (2002-07-12 10:20) [6]Внесите в какое-нибудь faq, что ли, не знаю уже, элементарщина - из раза в раз: параметра не хватает Dummy: Pointer для замещения self.
← →
HekTo (2002-07-12 16:52) [7]
> procedure onclosemethod(sender:pobj;var accept:boolean);
> begin
> applet.close;
> end;
>
> begin
> form:=NewForm(Applet,"Пример");form.onclose:=Toneventaccept(MakeMethod(nil,@onclosemethod));
> form.onmessage:=TOnMessage(MakeMethod(nil,@bgproc));
> run(form);
> end.
Или я отстал от жизни, или где тут Applet=NewApplet...
applet.close = nil.close ?
← →
zetta (2002-07-24 19:18) [8]а что, таймер и работа с файлами не совместимы? у меня вызывает runtime error и зависаловы.
← →
zetta (2002-07-24 20:06) [9]vcl-версия тоже не справляется: http://delphi.mastak.ru/cgi-bin/forum.pl?look=1&id=1027522983&n=0
там можно посмотреть механизм программы. как такое корректно реализовать на кол?
← →
Vladimir Kladov (2002-07-26 12:20) [10]Работайте с файлами без Assignfile. в KOL достаточно способов. Я уже
перечислял:
1) врапперы АПИ (FileCreate,...)
2) потоки (New...FileStream,...)
3) strList.LoadFromFile/SaveToFile
любой из этих способов экономичнее AssignFile как минимум на 5К кода.
К тому же, AssignFile не совместим с заменой system.dcu, а это еще 10К.
Но вообще-то, с AssignFile тоже должно работать. Надо только отключить генерацию exception по ошибке {$I-} кажется, и анализировать ошибки руками. Exception из VCL не совместим с KOL. Есть свой в err.pas, но при ошибках в паскалевскими файлами все равно создается VCL-вский, это встроено.
Страницы: 1 вся ветка
Форум: "KOL";
Текущий архив: 2003.05.05;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.007 c