Главная страница
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.029 c
1-1085381152
Дмитрий 2004
2004-05-24 10:45
2004.06.13
Вертикальный QRlabel


14-1085176317
lak
2004-05-22 01:51
2004.06.13
http://www.artlebedev.ru


14-1085855207
Анонимный алкоголик
2004-05-29 22:26
2004.06.13
Нужен выход


1-1086061203
User_OKA
2004-06-01 07:40
2004.06.13
String Grid


4-1084053583
Мыш
2004-05-09 01:59
2004.06.13
получение иконки не работает