Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "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
3-12613
Jackas
2003-04-15 13:50
2003.05.05
Можно ли пересылать значения поля базы данных по одной ссылке?


1-12744
_PG_gaws
2003-04-21 15:58
2003.05.05
перетаскивание формы???


1-12727
$HiC0
2003-04-23 18:43
2003.05.05
Размер объекта в байтах


6-12844
bomberman
2003-02-24 02:29
2003.05.05
Как соеденить два модема между собой


3-12605
Саня
2003-04-12 08:40
2003.05.05
Дайте рекомендацию по работе ACCESS2000 в сети





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский