2016-06-12 5 views
0

カスタムインストーライメージを追加しましたが、Aero glassウィンドウ7を組み合わせると表示されません。解決策はありますか?Windows 7でAero glassでカスタマイズされたインストーライメージを表示

あなたがURLにつながるためにそれらをクリックしている場合、これらの画像は、次のとおりです。Aeroグラスなし

without aero glass

Aeroグラス

with aero glass

でマイコード

[Setup] 
AppName=My Application 
AppVersion=1.5 
DefaultDirName={pf}\My Application 

[Files] 
Source: "face.bmp"; Flags: dontcopy 
Source: "suscri.bmp"; Flags: dontcopy 
Source: "logo.bmp"; Flags: dontcopy 

[Code] 
procedure MyImageClick(Sender: TObject); 
var 
    ErrorCode: Integer; 
begin 
    ShellExec('open', 'http://www.facebook.com/williamsgamer', '', '', SW_SHOWNORMAL, ewNoWait, ErrorCode); 
end; 

procedure MyImageClick2(Sender: TObject); 
var 
    ErrorCode2: Integer; 
begin 
    ShellExec('open', 'http://www.youtube.com/williams117gamer', '', '', SW_SHOWNORMAL, ewNoWait, ErrorCode2); 
end; 

procedure MyImageClick3(Sender: TObject); 
var 
    ErrorCode3: Integer; 
begin 
    ShellExec('open', 'http://williamsmz98.wix.com/l4d-updates', '', '', SW_SHOWNORMAL, ewNoWait, ErrorCode3); 
end; 

procedure CreateMyImage(); 
begin 
    ExtractTemporaryFile('face.bmp'); 
    with TBitmapImage.Create(WizardForm) do 
    begin 
    Parent := WizardForm; 
    Bitmap.LoadFromFile(ExpandConstant('{tmp}\face.bmp')); 
    AutoSize := True; 
    Left := 20; 
    Top := 320; 
    Cursor := crHand; 
    OnClick := @MyImageClick; 
    end; 
end; 

procedure CreateMyImage2(); 
begin 
    ExtractTemporaryFile('suscri.bmp'); 
    with TBitmapImage.Create(WizardForm) do 
    begin 
    Parent := WizardForm; 
    Bitmap.LoadFromFile(ExpandConstant('{tmp}\suscri.bmp')); 
    AutoSize := True; 
    Left := 70; 
    Top := 320; 
    Cursor := crHand; 
    OnClick := @MyImageClick2; 
    end; 
end; 

procedure CreateMyImage3(); 
begin 
    ExtractTemporaryFile('logo.bmp'); 
    with TBitmapImage.Create(WizardForm) do 
    begin 
    Parent := WizardForm; 
    Bitmap.LoadFromFile(ExpandConstant('{tmp}\logo.bmp')); 
    AutoSize := True; 
    Left := 130; 
    Top := 320; 
    Cursor := crHand; 
    OnClick := @MyImageClick3; 
    end; 
end; 

procedure InitializeWizard1; 
begin 
    CreateMyImage(); 
    CreateMyImage2(); 
    CreateMyImage3(); 
end; 
[Setup] 

[Files] 
Source: compiler:Dll Pack\iswin7.dll; Flags: dontcopy 

[Code] 
procedure iswin7_add_glass(Handle:HWND; Left, Top, Right, Bottom : Integer; GDIPLoadMode: boolean); external '[email protected]:iswin7.dll stdcall'; 
procedure iswin7_add_button(Handle:HWND); external '[email protected]:iswin7.dll stdcall'; 
procedure iswin7_free; external '[email protected]:iswin7.dll stdcall'; 

procedure InitializeWizard2(); 
begin 
    iswin7_add_button(WizardForm.BackButton.Handle); 
    iswin7_add_button(WizardForm.NextButton.Handle); 
    iswin7_add_button(WizardForm.CancelButton.Handle); 
    iswin7_add_glass(WizardForm.Handle, 0, 0, 0, 47, True); 
end; 

procedure DeinitializeSetup2(); 
begin 
    iswin7_free; 
end; 
[Setup] 

[Code] 

procedure InitializeWizard(); 
begin 
    InitializeWizard1(); 
    InitializeWizard2(); 
end; 

procedure DeinitializeSetup(); 
begin 
    DeinitializeSetup2(); 
end; 

答えて

0

これは、透明になる領域に画像を配置したためです。

画像を「内側領域」(灰色の領域)に移動すると、画像が表示されます。

+0

表示方法はありませんか? そうでなければ、私はボタンを置くことを余儀なくされます、ありがとう –

関連する問題