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

Вниз

Картинка из dll   Найти похожие ветки 

 
Lui ©   (2004-05-09 23:08) [0]

Есть форма, на ней картинка (с надписью "Подождите"). Поверх этой картинки ещё одна, но без изображения. Изображение во вторую загружаю из dll (его размер 25 Мб). Хотелось бы иметь следующее. При открытии формы отображается картинка "Подождите", после чего во вторую загружается изображение из dll. После полной загрузки второй, первая исчезает. Сейчас происходит то, что пока вторая грузится первая не отображается, то есть они грузятся одновременно.


 
Nick Denry ©   (2004-05-09 23:26) [1]

Код в студию...

И зачем такой большой размер БМП?

Есть же компрессия RLE (без проблем  - поддерживается виндой), JPEG (Оле контейнер - тоже досточно несложно..)
и т.д.?


 
Lui ©   (2004-05-09 23:35) [2]

Так в длл и есть jpeg, просто больших размеров


unit Map;

interface

uses
 Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
 Dialogs, jpeg, ExtCtrls, StdCtrls, Buttons, AppEvnts, Gauges;

type
 TMapForm = class(TForm)
   MapBox: TScrollBox;
   MapImg: TImage;
   ListBox1: TListBox;
   Wait: TImage;
   Fon: TImage;
   ExitButton: TSpeedButton;
   Indic: TGauge;
   procedure FormClose(Sender: TObject; var Action: TCloseAction);
   procedure ExitButtonClick(Sender: TObject);
   procedure FonProgress(Sender: TObject; Stage: TProgressStage;
     PercentDone: Byte; RedrawNow: Boolean; const R: TRect;
     const Msg: String);
 private
   { Private declarations }
 public
 libr: HINST;
   { Public declarations }
 end;

var
 MapForm: TMapForm;

implementation

Uses Main,functions;
{$R *.dfm}

procedure TMapForm.FormClose(Sender: TObject; var Action: TCloseAction);
begin
MapForm.Enabled:=False;
if ConfirmExit() then
       begin
               Action:=caNone;
               MapForm.Enabled:=True;
       end
else
       begin
            FreeLibrary(libr);
            Application.Terminate;
       end;

end;

procedure TMapForm.ExitButtonClick(Sender: TObject);
begin
MapForm.Close;
end;

procedure TMapForm.FonProgress(Sender: TObject; Stage: TProgressStage;
 PercentDone: Byte; RedrawNow: Boolean; const R: TRect;
 const Msg: String);
begin
  if Stage=psEnding then
       begin
        libr:= LoadLibrary(PChar(Main.path+"map.dll"));
        MapImg.Picture.Bitmap.Handle:=LoadBitmap(libr,"MAP_RU");
       end;
  Indic.Progress:=Indic.Progress+1;
end;

end.


Объект wait - картинка с надписью "Подождите". MapImg - карта, которая грузится из длл



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

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

Наверх




Память: 0.47 MB
Время: 0.049 c
3-1085464135
IBNovice
2004-05-25 09:48
2004.06.13
время доступа


14-1085787364
Thor
2004-05-29 03:36
2004.06.13
помогите с бейсиком!


1-1086106246
Anton
2004-06-01 20:10
2004.06.13
Еще раз о записях


14-1085404673
Thor
2004-05-24 17:17
2004.06.13
как установить компонент из D6 на D8?


1-1085934812
Ruslan
2004-05-30 20:33
2004.06.13
Насчет работы с датами. Надо вычислять количество пройденных