
Скрипты Inno Setup. Помощь и советы [часть 5]
-
Ivan_009
Re: Скрипты Inno Setup. Помощь и советы [часть 5]
Johny777, а возможно или нет наложить изображение через bmp на чекбоксы 

-
Johny777
Re: Скрипты Inno Setup. Помощь и советы [часть 5]
Цитата alert30:
Inno Setup Joiner
Нет. Делал всё руками.
Inno Setup Joiner
Скрипты Inno Setup. Помощь и советы [часть 5]
Нет. Делал всё руками.
-
Ivan_009
Re: Скрипты Inno Setup. Помощь и советы [часть 5]
Как добавить крестик и кнопку свернуть вот сюда без использования ботвы подскажите кто знает заранее спасибо... 

-
Johny777
Re: Скрипты Inno Setup. Помощь и советы [часть 5]
Ivan_009,
3 способа:
1. использовать TNewButton с текстом "X" и "-"
(С текстурированием страницей назад можно добиться уровня 2-го способа)
код:
Код:
2. использовать TNewSpeedButton с глифами (советую)
код:
Код:
архив с кодом и картинками-примерами:
3. использовать ImageButton (лучший вариант), те картинку с событиями как при текстурировании
извиняй
рисованием мне сейчас заниматься некогда
так что сам попробуй разобрать, будут вопросы спрашивай
пример такой кнопки это: ...\Inno Setup 5\Examples\Example_MouseEvent_ImgBtn.iss
там и наведение и нажатие и пр.
можно такую кнопку навернуть...
... не хуже чем в аэро стиле семёрки (свечение)!
но не думаю, что стоит с ним заморачиваться, если только ты не делаешь инсталл типа StarCraft 2 за авторством South
3 способа:
1. использовать TNewButton с текстом "X" и "-"
(С текстурированием страницей назад можно добиться уровня 2-го способа)
код:
читать дальше »
Код:
Код: Выделить всё
[Setup]
AppName=My Program
AppVerName=My Program v 1.5
DefaultDirName={pf}\My Program
DefaultGroupName=My Program
OutputDir=.
[ Code]
procedure Close_or_Minimize(Sender: TObject);
begin
case TNewButton(Sender).Caption of
'X': WizardForm.Close;
'-': SendMessage(WizardForm.Handle,$112,61472,0);
end;
end;
procedure InitializeWizard;
begin
with WizardForm do
begin
OuterNotebook.Hide;
BorderStyle := bsNone;
Color := $506a5a;
end;
with TNewButton.Create(WizardForm) do
begin
Parent := WizardForm;
SetBounds(WizardForm.Width - ScaleX(25),ScaleY(10),ScaleX(16),ScaleY(16));
Caption := 'X';
OnClick := @Close_or_Minimize;
ShowHint := True;
Hint := 'Закрыть';
end;
with TNewButton.Create(WizardForm) do
begin
Parent := WizardForm;
SetBounds(WizardForm.Width - ScaleX(40),ScaleY(10),ScaleX(16),ScaleY(16));
Caption := '-';
OnClick := @Close_or_Minimize;
ShowHint := True;
Hint := 'Свернуть';
end;
end;2. использовать TNewSpeedButton с глифами (советую)
код:
читать дальше »
Код:
Код: Выделить всё
[Setup]
AppName=My Program
AppVerName=My Program v 1.5
DefaultDirName={pf}\My Program
DefaultGroupName=My Program
OutputDir=.
BitmapResource=Mini:min.bmp|Close:Close.bmp
[ Code]
procedure Close_or_Minimize(Sender: TObject);
begin
case TNewSpeedButton(Sender).Hint of
'Закрыть': WizardForm.Close;
'Cвернуть': SendMessage(WizardForm.Handle,$112,61472,0);
end;
end;
procedure InitializeWizard;
begin
with WizardForm do
begin
OuterNotebook.Hide;
BorderStyle := bsNone;
Color := $506a5a;
end;
with TNewSpeedButton.Create(nil) do
begin
Parent := WizardForm;
SetBounds(WizardForm.Width - ScaleX(50),ScaleY(10),ScaleX(16),ScaleY(16));
Glyph.LoadFromResourceName(HInstance, '_IS_MINI');
ShowHint := True;
Hint := 'Cвернуть';
OnClick := @Close_or_Minimize;
end;
with TNewSpeedButton.Create(nil) do
begin
Parent := WizardForm;
ThemeEnabled := False;
SetBounds(WizardForm.Width - ScaleX(25),ScaleY(10),ScaleX(16),ScaleY(16));
Glyph.LoadFromResourceName(HInstance, '_IS_CLOSE');
ShowHint := True;
Hint := 'Закрыть';
OnClick := @Close_or_Minimize;
end;
end;архив с кодом и картинками-примерами:
http://sendfile.su/650884
3. использовать ImageButton (лучший вариант), те картинку с событиями как при текстурировании
извиняй
рисованием мне сейчас заниматься некогда
так что сам попробуй разобрать, будут вопросы спрашивай
пример такой кнопки это: ...\Inno Setup 5\Examples\Example_MouseEvent_ImgBtn.iss
там и наведение и нажатие и пр.
можно такую кнопку навернуть...
... не хуже чем в аэро стиле семёрки (свечение)!
но не думаю, что стоит с ним заморачиваться, если только ты не делаешь инсталл типа StarCraft 2 за авторством South
-
ChVL
Re: Скрипты Inno Setup. Помощь и советы [часть 5]
Цитата alert30:
alert30
Прости, а как ею вообще пользоваться, вернее сказать как её запустить то, там просто .EXE файл.
alert30
Скрипты Inno Setup. Помощь и советы [часть 5]
Прости, а как ею вообще пользоваться, вернее сказать как её запустить то, там просто .EXE файл.
-
Gnom_aka_Lexander
Re: Скрипты Inno Setup. Помощь и советы [часть 5]
ChVL, вот так:
Код:
Протип выглядит так: function MyStrFunc(s: string): string;
читать дальше »
Код:
Код: Выделить всё
[Setup]
AppName=My Application
AppVersion=1.5
DefaultDirName={pf}\My Application
[Files]
Source: {code_GetSpecialPath}\MyProg; DestDir: {code:GetVideoPath}\MyProg
[*code]
const
MAX_PATH = 260;
CSIDL_MYVIDEO = $0e;
function SHGetSpecialFolderPath(hwndOwner: HWND; lpszPath: PChar; nFolder: Integer; fCreate: BOOL): BOOL;
external 'SHGetSpecialFolderPathA@shell32.dll stdcall';
function GetSpecialPath(CSIDL: Word): string;
var
s: string;
begin
SetLength(s, MAX_PATH);
if not SHGetSpecialFolderPath(0, PChar(s), CSIDL, True) then s := '';
Result:= PChar(s);
end;
function GetVideoPath(s: string): string;
begin
Result:= GetSpecialPath(CSIDL_MYVIDEO);
end;Протип выглядит так: function MyStrFunc(s: string): string;
-
ChVL
Re: Скрипты Inno Setup. Помощь и советы [часть 5]
Цитата Ivan_009:
Ivan_009 Ivan_009 сейчас на форуме
Не могу не через командную строчку не через Експловер запустить.
Ivan_009 Ivan_009 сейчас на форуме
Скрипты Inno Setup. Помощь и советы [часть 5]
Не могу не через командную строчку не через Експловер запустить.
-
R.i.m.s.k.y.
-
ChVL
Re: Скрипты Inno Setup. Помощь и советы [часть 5]
Цитата Ivan_009:
Ivan_009
Готово. Теперь что нужно сделать, научи пожалуйста.
Ivan_009
Скрипты Inno Setup. Помощь и советы [часть 5]
Готово. Теперь что нужно сделать, научи пожалуйста.
-
ChVL
Re: Скрипты Inno Setup. Помощь и советы [часть 5]
Twoface,
После чего, в проводнике выделяем подготовленные скрипты, и в контекстном меню выбираем Join Scripts.
И все
После чего, в проводнике выделяем подготовленные скрипты, и в контекстном меню выбираем Join Scripts.
И все
