Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Здраст! Подск. Плиз! Завершение программы.... [Delphi, Windows]


Константин ©   (2002-10-19 16:21:00) 

... из вторичного VCL-потока в KOL-программе без появленя в FullScreen-DDraw системного меню.


Константин   (2002-10-23 14:55:00) [1]

Gandalf@ятебевыслалкойчёпосмотри


SPeller   (2002-10-23 11:53:00) [2]


> Константин (23.10.02 10:40)

В приведённом тобой коде абсолютно параллельно какой формат графики ты используешь, хоть ВМР, хоть РСХ, хоть CDR, хоть FFX.


Константин   (2002-10-23 10:40:00) [3]

некТо>>А если я хочу, чтобы этот фрагмент не знал, какая именно графика(JPEG?BMP?PNG?Other?) хранится в FRecreateGraphic? (для логической модульности и расширябельности).


HekTo   (2002-10-22 16:13:00) [4]

>with TCanvas.Create do
>begin
>Handle:=ddsurfacedc;
>Draw(0,0,FRecreateGraphic);
>end;
>Вы думаете. что в KOL я могу проще и понятнее написать????


Если FRecreateGraphic это PBitmap(для KOL), то:
FRecreateGraphic.Draw(ddsurfacedc, 0, 0);

Где проще и понятнее ? :)


Константин   (2002-10-22 14:25:00) [5]

Gandalf >> При восстановлении поверхности, если она была утерена, после _Restore выполняется этот фрагмент (Free забыл при рукописном копировании в конференцию). А чё DirectX проверять:))))


Gandalf   (2002-10-22 13:37:00) [6]

Думаю не будем спорить о том совмещать VCL и КОЛ или нет, если хочется то почему нет? Насчет помоши, так вот по обрывкам кода судить тяжело (и даже очень).Попробуй проверить классические ошибки, Dummy-Pointer (если это читый КОЛ), работу с памятью, сам DX, и нтеграцию (места стыка), если dll юзаешь то и их тоже. Или поделись с кем нибуть исходниками (если нежалко, или не тайна). Удачи.


Константин   (2002-10-22 12:19:00) [7]

У меня в движке такие строки(если потеряна поверхность):

with TCanvas.Create do
begin
Handle:=ddsurfacedc;
Draw(0,0,FRecreateGraphic);
end;

Вы думаете. что в KOL я могу проще и понятнее написать????


blackalex   (2002-10-21 17:06:00) [8]

VCL не нужен вообще. Есть все в KOL. Покапайся в Graphics extensions на KOL сайте, там есть и JPEG,GIF и PNG . В самом же KOL есть TBitmap


BorisMor   (2002-10-21 16:54:00) [9]


> Нее, а как мне с TBitmap,TJPEGImage итп быть??

А в чем проблема ?
Bitmap - поддерживается KOL
JPEG - надо скачать KolJpegObj
+ есть поддержка PNG и PCX


Константин   (2002-10-21 16:37:00) [10]

Нее, а как мне с TBitmap,TJPEGImage итп быть??
ну будет прога 50 кб 170--50 не 420--170! ну нельзя же всё обсурдить! А насчёт взаимной неперевариваемости VCL&KOL ты скореевсего прав.


SPeller   (2002-10-21 13:32:00) [11]

Неужели нельзя без VCL-овских модулей обойтись? KOL практически полностью может их заменить. Тогда размер твоей проги будет ~50 Кб. Может оно именно из-за этого и глючит, что ты и VCL и KOL одновременно используешь?


Константин   (2002-10-21 13:17:00) [12]

~170 KB. да подскажи же по сути, млин! А то всё уточняешь да уточняешь.


SPeller   (2002-10-21 11:09:00) [13]

А размер программы какой?


Константин   (2002-10-21 10:40:00) [14]

От VCL я использую Classes,Sysutils. И ни модулем больше.
Т. е. нет в главном модуле uses Forms, вызовов Application.* итп.


SPeller   (2002-10-20 15:45:00) [15]

А как соединились KOL и VCL? Если присутствует и то и другое, то первое не имеет смысла использовать, поскольку VCL закрывает все полезные свойства KOL.


Константин   (2002-10-20 13:20:00) [16]

Итак, сядьте поудобне, раздвиньте глазные раковины:::)))
Есть KOL-прога. В ней создаётся KOL-окно. Обработчики событий
находятся в специальном VCL-классе. При его создании создаётся поток средствами VCL. Он и вызывает DirectX-методы. Инициализация DirectDraw и DirectInput происходит в главном потоке, созданном "по-умолчанию".
Клава не блокируется, какие флаги не ставь. AltF4 срабатывает и когда это нельзя. Если же в VCL-потоке дойти до того места, где
находиться должен "самодельная точка выхода", то там не помогает ни ExitProcess,PostQuitMessage ни вообще ничего - всеравно ждёт ALTF4. Ужас. немой.


SPeller   (2002-10-20 00:47:00) [17]

А теперь то же самое с чувством, с толком, с расстановкой.


Наверх

Титульная страница Поиск, карта сайта Написать письмо