Alloc, пример
ищем
и меняем как нужно
ищем
Код:
#define ScrollOffset ItemHeight
Вложения
-
26.6 KB Просмотры: 40
#define ScrollOffset ItemHeight
Спасибо за ответ. Скажите, менять нужно значение ItemHeight? Я вот пробую, но что то плавной прокрутки нет...Alloc, пример
ищем
и меняем как нужноКод:#define ScrollOffset ItemHeight
спасибо большое!Alloc,
высоту самого чекбокса задавай кратной ItemHeightКод://смещение основных объектов от краев чеклистбокса #define FrameIndent 5
procedure SetStateNewButtons();
begin
with WizardForm.BackButton do
begin
BtnSetText(hBackBtn,PAnsiChar(Caption));
BtnSetVisibility(hBackBtn,Visible);
BtnSetEnabled(hBackBtn,Enabled);
end;
with WizardForm.NextButton do
begin
BtnSetText(hNextBtn,PAnsiChar(Caption));
BtnSetVisibility(hNextBtn,Visible);
BtnSetEnabled(hNextBtn,Enabled);
end;
with WizardForm.CancelButton do
begin
BtnSetText(hCancelBtn,PAnsiChar(Caption));
BtnSetVisibility(hCancelBtn,Visible);
BtnSetEnabled(hCancelBtn,Enabled);
end;
BtnSetText(hDirBrowseBtn,PAnsiChar(WizardForm.DirBrowseButton.Caption));
end;
procedure WizardFormBtnClick(hBtn:HWND);
var
Btn:TButton;
begin
case hBtn of
hCancelBtn: Btn:=WizardForm.CancelButton;
hNextBtn: Btn:=WizardForm.NextButton;
hBackBtn: Btn:=WizardForm.BackButton;
hDirBrowseBtn: Btn:=WizardForm.DirBrowseButton;
end;
Btn.OnClick(Btn);
SetStateNewButtons;
BtnRefresh(hBtn);
end;
Да собственно говоря пока никак. Ну не дружит AnsiChar с китайским, ну вот никак. Нужно пилить unicode-версии функций.Подскажите как подружить создаваемые кнопки через botva2 и китайский/японский языки?
[Setup]
AppName=123
AppVersion=123
DefaultDirName={pf}\Sanctum
AppVerName=123
WizardSmallImageFile=1.bmp
[Code]
procedure InitializeWizard();
begin
WizardForm.WizardSmallBitmapImage.Left:=0;
WizardForm.WizardSmallBitmapImage.Width:=WizardForm.ClientWidth;
end;
procedure InitializeWizard;
begin
with WizardForm do begin
WizardForm.PageNameLabel.Hide;
WizardForm.PageDescriptionLabel.Hide; // тут спрячу текст наверху
end;
img:=ImgLoad(WizardForm.Handle,'cs1.jpg',0,0,231,250,True,True);
// вставили картинку на главной странице welcome
img4:=ImgLoad(WizardForm.WizardSmallBitmapImage ????? не знаю ...... ,'cs2.jpg',0,0,350,400,True,False);
// вот тут 2ю картинку надо отправить наверх. но она отображается в футере. смена координат
меняет их в пределах футера, а надо еще чтоб со 2й странице была видна, где smallimg
ImgApplyChanges(WizardForm.Handle);
end;
я создал. не врубился.а админ создал отдельную тему
[Setup]
AppName=My Program
AppVersion=1.5
AppVerName=My Program 1.5
DefaultDirName={pf}\My Program
DefaultGroupName=My Program
AppPublisher=YURSHAT
[Languages]
Name: russian; MessagesFile: compiler:Languages\Russian.isl
[Icons]
Name: {group}\My Program; Filename: {app}\MyProg.exe
[Files]
Source: botva2.dll; Flags: dontcopy
Source: WizardImage.png; Flags: dontcopy
Source: WizardSmalImage.png; Flags: dontcopy
[Code]
var
SmallImage, WizardImage: Longint;
PageNameLabel, PageDescriptionLabel: TLabel;
function ImgLoad(Wnd :HWND; FileName: PAnsiChar; Left, Top, Width, Height :integer; Stretch, IsBkg :boolean) :Longint; external 'ImgLoad@{tmp}\botva2.dll stdcall delayload';
procedure ImgSetVisibility(img :Longint; Visible :boolean); external 'ImgSetVisibility@{tmp}\botva2.dll stdcall delayload';
procedure ImgApplyChanges(h:HWND); external 'ImgApplyChanges@{tmp}\botva2.dll stdcall delayload';
procedure gdipShutdown; external 'gdipShutdown@{tmp}\botva2.dll stdcall delayload';
function InitializeSetup: Boolean;
begin
if not FileExists(ExpandConstant('{tmp}\botva2.dll')) then ExtractTemporaryFile('botva2.dll');
Result:=True;
end;
procedure InitializeWizard;
begin
ExtractTemporaryFile('WizardImage.png');
ExtractTemporaryFile('WizardSmalImage.png');
WizardForm.WizardBitmapImage.Hide;
WizardForm.WizardBitmapImage2.Hide;
WizardForm.WizardSmallBitmapImage.Hide;
WizardForm.PageNameLabel.Hide;
WizardForm.PageDescriptionLabel.Hide;
PageNameLabel := TLabel.Create(WizardForm);
with PageNameLabel do begin
SetBounds(ScaleX(24), ScaleY(10), ScaleX(405), ScaleY(14));
AutoSize := False;
WordWrap := False;
Font.Style := [fsBold];
Transparent := True;
Parent := WizardForm.MainPanel;
end;
PageDescriptionLabel := TLabel.Create(WizardForm);
with PageDescriptionLabel do begin
SetBounds(ScaleX(40), ScaleY(26), ScaleX(389), ScaleY(25));
AutoSize := False;
WordWrap := True;
Transparent := True;
Parent := WizardForm.MainPanel;
end;
WizardImage:=ImgLoad(WizardForm.WelcomePage.Handle,ExpandConstant('{tmp}\WizardImage.png'),ScaleX(0), ScaleY(0),ScaleX(164),ScaleY(314),True,True);
WizardImage:=ImgLoad(WizardForm.FinishedPage.Handle,ExpandConstant('{tmp}\WizardImage.png'),ScaleX(0), ScaleY(0),ScaleX(164),ScaleY(314),True,True);
SmallImage:=ImgLoad(WizardForm.MainPanel.Handle,ExpandConstant('{tmp}\WizardSmalImage.png'),ScaleX(0), ScaleY(0),ScaleX(497),ScaleY(58),True,True);
ImgApplyChanges(WizardForm.WelcomePage.Handle);
ImgApplyChanges(WizardForm.FinishedPage.Handle);
ImgApplyChanges(WizardForm.MainPanel.Handle);
end;
procedure CurPageChanged(CurPageID: Integer);
begin
PageNameLabel.Caption := WizardForm.PageNameLabel.Caption;
PageDescriptionLabel.Caption := WizardForm.PageDescriptionLabel.Caption;
ImgSetVisibility(WizardImage,False);
if CurPageID = wpWelcome then
ImgSetVisibility(WizardImage,True);
if CurPageID = wpFinished then
ImgSetVisibility(WizardImage,True);
end;
procedure DeInitializeSetup();
begin
gdipShutdown;
end;
[Setup]
AppName=My Program
AppVersion=1.5
AppVerName=My Program 1.5
DefaultDirName={pf}\My Program
[Languages]
Name: russian; MessagesFile: compiler:Languages\Russian.isl
[Files]
Source: Files\*; Flags: dontcopy
[Code]
function ImgLoad(Wnd :HWND; FileName: PAnsiChar; Left, Top, Width, Height :integer; Stretch, IsBkg :boolean) :Longint; external 'ImgLoad@{tmp}\botva2.dll stdcall delayload';
procedure ImgApplyChanges(h:HWND); external 'ImgApplyChanges@{tmp}\botva2.dll stdcall delayload';
procedure gdipShutdown; external 'gdipShutdown@{tmp}\botva2.dll stdcall delayload';
function InitializeSetup: Boolean;
begin
if not FileExists(ExpandConstant('{tmp}\botva2.dll')) then ExtractTemporaryFile('botva2.dll');
Result:=True;
end;
var
Panel1: TPanel;
procedure InitializeWizard;
begin
ExtractTemporaryFile('2.jpg');
//
with WizardForm do
begin
Panel1 := TPanel.Create(WizardForm);
with Panel1 do
begin
Parent := MainPanel;
Left := ScaleX(0);
Top := ScaleY(0);
Width := MainPanel.width;
Height := MainPanel.Height;
end;
ImgLoad(Panel1.Handle, ExpandConstant('{tmp}\2.jpg'), 0, 0, MainPanel.width, MainPanel.Height, True, True);
WizardSmallBitmapImage.Hide;
ImgApplyChanges(Panel1.Handle);
end;
end;
procedure DeInitializeSetup();
begin
gdipShutdown;
end;
удали антивирусниккак-то это исправить?