Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.11.11;
Скачать: CL | DM;

Вниз

Пишу games mahgong, и пытаюсь загрузить много Bitmap-ов в память   Найти похожие ветки 

 
Tea_pot   (2002-11-01 12:28) [0]

Выдает сообщение что недостаточно памяти для выполнения команды,
как быть?


 
han_malign ©   (2002-11-01 12:53) [1]

Это что же за Bitmap-ы, если виртуальной памяти не хватает.
З.Ы. Вероятнее всего не хватает не памяти, а ресурсов(на handle-ы HBitmap), практикуется объединение всех картинок одинакового размера в одну и выдергивание нужной из нужного места в большой, на этом принципе реализован TImageList - копай его, или как сделано в RXLib:
procedure AssignBitmapCell(Source: TGraphic; Dest: TBitmap; Cols, Rows,
Index: Integer);
var
CellWidth, CellHeight: Integer;
begin
if (Source <> nil) and (Dest <> nil) then begin
if Cols <= 0 then Cols := 1;
if Rows <= 0 then Rows := 1;
if Index < 0 then Index := 0;
CellWidth := Source.Width div Cols;
CellHeight := Source.Height div Rows;
with Dest do begin
Width := CellWidth; Height := CellHeight;
end;
if Source is TBitmap then begin
Dest.Canvas.CopyRect(Bounds(0, 0, CellWidth, CellHeight),
TBitmap(Source).Canvas, Bounds((Index mod Cols) * CellWidth,
(Index div Cols) * CellHeight, CellWidth, CellHeight));
end
else begin
Dest.Canvas.Brush.Color := clSilver;
Dest.Canvas.FillRect(Bounds(0, 0, CellWidth, CellHeight));
Dest.Canvas.Draw(-(Index mod Cols) * CellWidth,
-(Index div Cols) * CellHeight, Source);
end;
end;
end;

(c)RxLib


 
Tea_pot   (2002-11-01 13:01) [2]

Вон в чем дело!Спасибо большое!



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

Текущий архив: 2002.11.11;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.013 c
14-34204
Malder
2002-10-22 01:22
2002.11.11
Достаточно прикольно, хотя и, действительно, просто


1-34073
p@s
2002-10-30 16:52
2002.11.11
Отображение всех форм на таскбаре


1-33953
Шурик Ш
2002-11-01 11:57
2002.11.11
Проверка существования файла


1-34011
ТАНАТ
2002-11-02 10:58
2002.11.11
Кто-нибудь считал когда-либо ОЧЕНЬ большие числа в Delphi ?


1-34050
vow
2002-10-30 20:24
2002.11.11
file.log