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

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

Помогите, люди! Глюк в мей проге! [D5]


LaResistance ©   (2002-10-12 00:46:00) 

Создал я свой собственный класс:
type
TBaseSprite = class
PosX, PosY : Integer;
SpriteWidth : Integer;
SpriteHeight : Integer;
procedure Show(var FDDSurfBack, FDDSurfImages : IDirectDrawSurface7); virtual; abstract;
private
rcRect : TRect;
end;
TCollideInfo = record
X, Y : Integer;
end;

TSprite = class(TBaseSprite)
Delay : DWORD;
.............// Здесь ещё куча переменных
constructor Create (const SprDelay : DWord; FrmCount, SprWidth, SprHeight : integer);
function GetCenterX : Integer;
function GetCenterY : Integer;
.............// И здесь
procedure Show (var FDDSurfBack, FDDSurfImages : IDirectDrawSurface7); override;
private
Xinc : Integer;
Yinc : Integer;
CollideInfo : TCollideInfo;
ThisTickCount : DWORD;
LastTickCount : DWORD;
end;

...........

var
Spr : TSprite;

Это я работаю с DirectDraw. Но дело не в нём.
Короче, процедура доходит до определённой строчки, где я присваиваю значение (допустим Spr.PosX := 10;) или сравниваю
(if Spr.Delay > 100 then beep;) и дальше - процедура невтемно заканчивается!!! Строчка beep;уже не выполняется! Почему?
Если вы заинтересовались этим вопросом, то лучше оставьте мыло и я скину вам исходник (Без EXE и тупых приколов). Если у вас нету библиотек DirectDraw - то скажите, тоже скину. Единственное - DirectDraw под D6 вроде бы не пашет. Хотя наверное глюк в моей проге далеко не от DirectDraw (работаю под D5). Руки такие :) !!!!
Спасибо.


Юрий Зотов   (2002-10-12 22:59:00) [1]

Spr.Create(.....) - это где же Вы видели такое "создание"?

См.: ZrenBy © (12.10.02 19:26)


Anatoly Podgoretsky   (2002-10-12 19:43:00) [2]

Приведи больше кода с ошибкой, обязательно создание


ZrenBy   (2002-10-12 19:26:00) [3]

Spr := TSprite.Create(...)


LaResistance   (2002-10-12 19:22:00) [4]

В том то и дело, создаёшь его (Spr.Create(.....);) - тоже дальше ничерта не пашет!!!


Юрий Зотов   (2002-10-12 01:04:00) [5]

Прежде, чем работать с объектом, создать его не забыли?


Наверх

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