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

Вниз

Кривое отображение модальной формы :(   Найти похожие ветки 

 
andreil ©   (2008-05-30 21:18) [0]

В программе использую модальные формы, тк на главной форме все не разместить - места не хватит, да и выглюдеть будет коряво.
Проблема заключается в следующем - при пока зе этой модальной формы она не видна, однако, стоит отодвинуть главную форму так, что бы была видна область, шде поидее находится эта форма, то модальная форма покажется (именно покажется, а не станет видимой).
Пока она невидима, к ее контролам обращаться не могу - выдает ошибки.

Может все из-за того, что процедуры, откуда делается "Applet.ProcessMessages" и обращаюсь к контролам, расположенны в CallBack-функциях? (Просто для работы используется ДЛЛка, а программа - просто оболочка к ней).

С другой модальной формаой все ОК, но там идет только отображение информации, а вв нужной мне идет обработка.

Исходники: http://ifolder.ru/6788411
Проблемная форма - ProgressForm.pas


 
Compiler ©   (2008-05-30 22:45) [1]

Applet На форме присутствует?


 
andreil ©   (2008-05-30 23:14) [2]

Только что кинул - результата нету.
Заметил, что модальное окно появляется позади программы + позади еще како-го либо окна, если есть. Как только его приоткрыть, сразу все ОК.
Но мне надо без таких ухищрений.


 
Compiler ©   (2008-05-30 23:19) [3]

> Исходники: http://ifolder.ru/6788411

 NewProgress(Progress, Form);
 Progress.Form.ShowModal;
 Progress.Form.Free;

Ну кто ж так вызывает?
 NewProgress(Progress, Applet);

И Applet на главную форму проекта


 
andreil ©   (2008-05-30 23:26) [4]

Теперь вообще не видно модального окна :(
А так вызываются модальные вормы по мануалу от создателя КОЛа (да и в моих прогах это работало, только в этом случае глючит).


 
Compiler ©   (2008-05-30 23:53) [5]

> Compiler ©   (30.05.08 23:19) [3]

Имел в виду

NewProgress(Progress, Applet);
Progress.Form.ShowModal;
Progress.Form.Free;

По идее должно работать. Может где-нибудь ошибка в другом месте? Может закоментировать OnCreate у создаваемой формы и посмотреть правильность работы?


 
andreil ©   (2008-05-31 00:09) [6]

Я так и сделал - ноль.
Закоментил Креэйт - форма показалась на УРА.
но как мне сделать так, что бы действие выполнилось при создании формы, но не через это свойство?


 
Compiler ©   (2008-05-31 00:36) [7]

Возможно ошибка возникает при вызове функций и процедур из длл. К прммеру
Gcf_Delphi_KOL_CreateFoldersTree: procedure(Tree: PControl; Package: Pointer); stdcall;
PControl вроде передавать в длл нельзя
Parent: integer; - у формы тоже есть Parent. Какой используется?


 
andreil ©   (2008-05-31 00:41) [8]

Передавать можно ;) Это ведь просто указатель, у меня вся ДЛЛка работает на указателях (оболочка думает, что я обращаюсь с Pointer"ом, а в ДЛЛке это - pPackage).

Все, проблема решена. Перенес код инициализации на таймер.


 
Unknown Mystic   (2008-06-19 17:37) [9]

Не знаю на сколько это хорошо и поможет ли в данном случае, но можно попробовать окну отправить WM_PAINT



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

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

Наверх




Память: 0.46 MB
Время: 0.005 c
15-1261813347
All
2009-12-26 10:42
2010.03.14
Нарезать болванку..


15-1261737888
Piter
2009-12-25 13:44
2010.03.14
Попросили помочь убрать AdWare


15-1261938570
Anatoly Podgoretsky
2009-12-27 21:29
2010.03.14
Литвин президент!


2-1263470601
Darvin
2010-01-14 15:03
2010.03.14
Доступ к элементам двумерного PSafeArray


4-1230197286
Unknown user
2008-12-25 12:28
2010.03.14
Скроллинг без скроллбокса





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