Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "KOL";
Текущий архив: 2006.05.28;
Скачать: [xml.tar.bz2];

Вниз

Невозможно сделать повторное создание формы.   Найти похожие ветки 

 
Linec   (2005-09-20 14:02) [0]

У меня программа написана на обычном Delphi, но я хочу создавать форму написанную на KOL (например настройки).

procedure TOption.Create;
begin
 form:=newform(applet,"Option");
 run(form);
end;

При первом вызове этой процедуры форма создается нормально. Потом пользователь выходит из нее, закрыв форму. Затем если попытаться вызвать снову эту процедуры, то форма появляется и сразу пропадает (сама закрывается).

Я пробовал ставить после run(form);
 form.free;
 applet.free;
а также очищал очередь сообщений от клавиатуры и мышки, но это не помогает.

Простое скрытие формы меня не удовлетворяет. Надо, чтобы форма полностью закрывалась, освобождая ресурсы. Но затем могла быть создана снова.
Если кто знает пожалуйста подскажите.


 
ECM ©   (2005-09-20 15:56) [1]

Один из вариантов:


var
 bExit: Boolean;

function MyWndProc( Sender: PControl; var Msg: TMsg; var Rslt: Integer ): Boolean;
begin
 Result := FALSE;
 if Msg.message = WM_CLOSE then bExit := TRUE;
end;

procedure TOption.Create;
var
 Frm: PControl;
 Msg: TMsg;
begin
 Frm := NewForm(Applet,"Option");
 Frm.AttachProc(@MyWndProc);
 Frm.Show;
 bExit := FALSE;
 while not bExit do begin
   WaitMessage();
   {
   if PeekMessage( Msg, 0, 0, 0, PM_REMOVE ) then
   begin
     TranslateMessage( Msg );
     DispatchMessage( Msg );
   end;
   }
   Frm.ProcessMessage;
 end;
 Frm.Free;
end;


 
ECM ©   (2005-09-20 15:58) [2]

З.Ы. Frm (в моем примере) => Form (у Вас)


 
Linec   (2005-09-20 19:52) [3]

Получилось, но при попытке свернуть окно происходит ошибка Access violation.


 
Linec   (2005-09-21 16:56) [4]

А из-за чего такое происходит?


 
ECM ©   (2005-09-22 18:30) [5]


> А из-за чего такое происходит?

Ошибка в 17-й строке...


 
ECM ©   (2005-09-23 10:53) [6]

Я имел ввиду что ошибка где-то у Вас
Вот мой тестовый проект

http://www.fastfile.ru/file/KOLVCLTestPrj.zip

там ничего лишнего - нет никаких AV

:)



Страницы: 1 вся ветка

Форум: "KOL";
Текущий архив: 2006.05.28;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.45 MB
Время: 0.009 c
2-1147509412
Tempora
2006-05-13 12:36
2006.05.28
Как проверить последний символ строки и...


2-1147458565
Succube
2006-05-12 22:29
2006.05.28
Сумма


2-1147187480
tigra
2006-05-09 19:11
2006.05.28
Сумма целых чисел от 1 до....


2-1147282253
DAn13
2006-05-10 21:30
2006.05.28
forma


2-1147280995
BAngel
2006-05-10 21:09
2006.05.28
как создать свой цвет





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский