Nowoczesny interfejs użytkownika (Modern UI) jest interfejsem użytkownika dla instalatorów NSIS. Interfejs zaprojektowany jest w stylu kreatorów najnowszych wersji Windows. Oparty jest na podstawowym interfejsie użytkownika, który wbudowany jest w NSIS, rozszerzając jego możliwości o nowe funkcjonalności oraz dodatkowe strony.
Wszystkie standardowe strony NSIS (takie jak strona wyboru komponentów do zainstalowania oraz katalogu instalacji) są także obsługiwane, jak wiele innych. Strona powitalna wprowadza użytkownika w proces instalacji, strona końcowa umożliwia użytkownikowi podjęcie określonych akcji po zamknięciu instalatora (np. czy program powinien być uruchomiony tuż po zamknięciu instalatora). Strona końcowa może być również użyta do zapytania o ponowne uruchomienie komputera, jeśli jest to wymagane.
Ustawienia dla nowoczesnego interfejsu powinny być wstawione na początku pliku skryptu. Ważnym jest, aby elementy te były w odpowiedniej, poniższej kolejności. Na przykład, ustawienia interfejsu powinny być zdefiniowane przed wstawieniem kodu stron, ponieważ strony zależą od konfiguracji interfejsu. Warto zajrzeć do działu: Przykładowe skrypty. Zobaczysz jak jest to zrobione w bieżących plikach skryptów.
Parametry przekazywane są w następującym porządku:
Wymagany_Parametr (Opcja1 | Opcja2) [Opcjonalny_Parametr]
Aby dodać obsługę nowoczesnego interfejsu użytkownika, dodaj poniższą linię na początku skryptu:
!include MUI.nsh
Kolejnym krokiem jest ustawienie opcji interfejsu użytkownika. Opcje te mają wpływ na wszystkie strony.
Ustawienia interfejsu dostarczane przez kompilator NSIS (takie jak LicenseText, Icon, CheckBitmap, InstallColors) nie powinny być używane w skryptach, które korzystają z nowoczesnego interfejsu użytkwonika. Nowoczesny interfejs użytkownika dostarcza porównywalne opcje lub ich rozszerzone wersje.
Przykłady:
!define MUI_COMPONENTSPAGE_SMALLDESC ; Brak wartości !define MUI_UI "myUI.exe" ; Wartość !define MUI_INSTFILESPAGE_COLORS "FFFFFF 000000" ; Dwa kolory
Ikona instalatora.
Domyślnie: ${NSISDIR}\Contrib\Graphics\Icons\modern-install.ico
Ikona deinstalatora.
Domyślnie: ${NSISDIR}\Contrib\Graphics\Icons\modern-uninstall.ico
Wyświetla obrazek w nagłówku strony.
Obrazek mapy bitowej, wyświetlanej w nagłówku stron instalatora (zalecany rozmiar: 150x57 pikseli).
Domyślnie: ${NSISDIR}\Contrib\Graphics\Header\nsis.bmp
Nie zmieniaj rozmiaru obrazka mapy bitowej w nagłówku instalatora. Użyj tej opcji tylko wtedy, gdy obrazek nie zajmuje całej powierzchni. Mając obrazek, który całkowicie wypełnia pole, nie powinieneś używać tej opcji, ponieważ rozmiar tego pola jest zmienny i zależy od ustawień DPI.
Obrazek mapy bitowej wyświetlany w nagłówku stron instalatora, gdy używasz języka RTL (rekomendowany rozmiar: 150x57 pikseli).
Domyślnie: Mapa bitowa wyświetlana po lewej stronie
Nie zmieniaj rozmiaru obrazka mapy bitowej w nagłówku instalatora, który używa języka RTL. Użyj tej opcji tylko wtedy, gdy obrazek nie zajmuje całej powierzchni. Mając obrazek, który całkowicie wypełnia pole, nie powinieneś używać tej opcji, ponieważ rozmiar tego pola jest zmienny i zależy od ustawień DPI.
Obrazek mapy bitowej wyświetlany w nagłówku stron deinstalatora (zalecany rozmiar: 150x57 pikseli).
Domyślnie: Mapa bitowa wyświetlana w nagłówku deinstalatora
Nie zmieniaj rozmiaru obrazka mapy bitowej w nagłówku deinstalatora. Użyj tej opcji tylko wtedy, gdy obrazek nie zajmuje całej powierzchni. Mając obrazek, który całkowicie wypełnia pole, nie powinieneś używać tej opcji, ponieważ rozmiar tego pola jest zmienny i zależy od ustawień DPI.
Obrazek mapy bitowej wyświetlany w nagłówku stron deinstalatorów, gdy używasz języka RTL (zalecany rozmiar: 150x57 pikseli).
Domyślnie: Mapa bitowa wyświetlana w nagłówku deinstalatora RTL
Nie zmieniaj rozmiaru obrazka mapy bitowej w nagłówku deinstalatora, który używa języka RTL. Użyj tej opcji tylko wtedy, gdy obrazek nie zajmuje całej powierzchni. Mając obrazek, który całkowicie wypełnia pole, nie powinieneś używać tej opcji, ponieważ rozmiar tego pola jest zmienny i zależy od ustawień DPI.
Wyświetla obrazek po prawej stronie nagłówka (używając języka RTL, obrazek będzie wyświetlany po jego lewej stronie).
Kolor tła dla nagłówka, strony powitalnej oraz strony końcowej.
Domyślnie: FFFFFF
Ustawia przezroczyste tło dla kontrolek etykiety nagłówka. Użyteczne dla niestandardowych interfejsów użytkownika, które ustawiają większy obrazek nagłówka.
Plik interfejsu z zasobami okna dialogowego. Zmień go, jeśli stworzyłeś swój własny interfejs.
Domyślnie: ${NSISDIR}\Contrib\UIs\modern.exe
Plik interfejsu z zasobami okna dialogowego IDD_INST, które zawiera kontrolkę mapy bitowej oraz przestrzeń na mapę bitową w nagłówku.
Domyślnie: ${NSISDIR}\Contrib\UIs\modern_headerbmp.exe
Plik interfejsu z zasobami okna dialogowego IDD_INST, który zawiera kontrolkę mapy bitowej oraz miejsce na mapę bitową w nagłówku po prawej stronie.
Domyślnie: ${NSISDIR}\Contrib\UIs\modern_headerbmpr.exe
Plik interfejsu z zasobami okna dialogowego IDD_SELCOM z małym obszarem opisowym.
Domyślnie: ${NSISDIR}\Contrib\UIs\modern_smalldesc.exe
Plik interfejsu z zasobami okna dialogowego IDD_SELCOM bez obszaru opisowego.
Domyślnie: ${NSISDIR}\Contrib\UIs\modern_nodesc.exe
Obrazek mapy bitowej strony powitalnej oraz strony końcowej instalatora (rekomendowany rozmiar: 164x314 pikseli).
Domyślnie: ${NSISDIR}\Contrib\Graphics\Wizard\win.bmp
Nie zmieniaj rozmiaru obrazka mapy bitowej strony powitalnej oraz końcowej instalatora. Użyj tej opcji tylko wtedy, gdy obrazek nie zajmuje całej powierzchni. Mając obrazek, który całkowicie wypełnia pole, nie powinieneś używać tej opcji, ponieważ rozmiar tego pola jest zmienny i zależy od ustawień DPI.
Plik INI wtyczki InstallOptions strony powitalnej oraz końcowej instalatora.
Domyślnie: ${NSISDIR}\Contrib\Modern UI\ioSpecial.ini
Obrazek mapy bitowej strony powitalnej oraz strony końcowej deinstalatora (rekomendowany rozmiar: 164x314 pikseli).
Domyślnie: ${NSISDIR}\Contrib\Graphics\Wizard\win.bmp
Nie zmieniaj rozmiaru obrazka mapy bitowej strony powitalnej i końcowej deinstalatora. Użyj tej opcji tylko wtedy, gdy obrazek nie zajmuje całej powierzchni. Mając obrazek, który całkowicie wypełnia pole, nie powinieneś używać tej opcji, ponieważ rozmiar tego pola jest zmienny i zależy od ustawień DPI.
Plik INI wtyczki InstallOptions strony powitalnej oraz końcowej deinstalatora.
Domyślnie: ${NSISDIR}\Contrib\Modern UI\ioSpecial.ini
Kolor tła dla pola tekstowego licencji. Użyj parametru /windows dla koloru tła tekstu Windows (zazwyczaj biały). Użyj parametru /grey dla koloru tła okna (zazwyczaj szary).
Domyślnie: /windows
Obrazek mapy bitowej zawierający znaki akceptacji, wyświetlana na drzewie wyboru składników.
Domyślnie: ${NSISDIR}\Contrib\Graphics\Checks\modern.bmp
Mały obszar opisu na dole strony. Interfejs ten zaleca się używać, jeśli instalator ma dużo sekcji i nie ma potrzeby używania rozbudowanych opisów.
Brak obszaru opisowego.
Kolor tła kontrolki tekstowej wybranego katalogu docelowego instalacji.
Kolor tła kontrolki listy katalogów Menu Start oraz kontrolki tekstowej wybranego katalogu.
Kolory ekranu strony z dziennikiem instalacji. Użyj parametru /windows dla domyślnych kolorów Windows.
Domyślnie: /windows
Styl paska postępu. Styl colored sprawia, że używana jest definicja MUI_INSTALLCOLORS.
Domyślnie: smooth
Nie przeskakuje automatycznie do strony końcowej, co pozwala użytkownikowi na sprawdzenie dziennika postępu instalacji.
Nie przeskakuje automatycznie do strony końcowej, co pozwala użytkownikowi na sprawdzenie dziennika postępu deinstalacji.
Wyświetla okno komunikatu z ostrzeżeniem, gdy użytkownik chce zamknąć instalatora.
Tekst wyświetlany w oknie komunikatu, który ostrzega przed przerwaniem instalacji.
Ustawia przycisk 'Anuluj', jako domyślny przycisk w oknie komunikatu.
Wyświetla okno komunikatu z ostrzeżeniem, gdy użytkownik chce zamknąć deinstalatora.
Tekst wyświetlany w oknie komunikatu, który ostrzega przed przerwaniem deinstalacji.
Ustawia przycisk 'Anuluj', jako domyślny przycisk w oknie komunikatu.
Wstaw poniższe makra, aby ustawić strony, które chcesz użyć. Strony zostaną wyświetlone w kolejności, w jakiej zostały zapisane w skrypcie. Aby dodać niestandardowe strony, wstaw polecenia niestandardowych stron pomiędzy tymi makrami.
Możesz dodać wiele stron określonego typu (na przykład, jeśli chcesz, aby użytkownik wybrał kilka katalogów).
Przykłady:
!insertmacro MUI_PAGE_LICENSE "Plik_Licencji.rtf" !insertmacro MUI_PAGE_COMPONENTS Var StartMenuFolder !insertmacro MUI_PAGE_STARTMENU "Application" $StartMenuFolder
Używając makra Menu Start, będziesz potrzebował numeru ID strony dla strony wyboru katalogu w Menu Start. Katalog ten będzie przechowywany w określonej zmiennej.
Strony instalatora
Strony deinstalatora
Ustawienia strony odnoszą się do pojedynczej strony i powinny być ustawiane przed wstawianiem makra strony. Te same ustawienia mogą być użyte zarówno dla instalatora, jak i dla deintalatora. Musisz powtórzyć ustawienia, jeśli chcesz zastosować je dla wielu stron. Przykład:
; Dodaj stronę wyboru katalogu, aby użytkownik mógł określić katalog wtyczek ; Przechowaj katalog w zmiennej $PluginsFolder Var PLUGINS_FOLDER !define MUI_DIRECTORYPAGE_VARIABLE $PluginsFolder !insertmacro MUI_PAGE_DIRECTORY
Wszystkie standardowe teksty interfejsu użytkownika wczytywane są z plików językowych, dla wszystkich obsługiwanych języków NSIS. Musisz więc tylko zdefiniować te teksty, jeśli chcesz zmienić ich domyślne wartości.
Jeśli parametrem jest tekst, który powinien być inny dla każdego z języków, zdefiniuj łańcuch znaków języka, używając polecenia LangString i użyj zmiennej $(LangStringName) jako wartości. Dla tekstu licencji w instalacji wielojęzykowej, możesz użyć LicenseLangString. Więcej informacji o instalatorach wielojęzykowych znajdziesz w podręczniku użytkownika.
We wszystkich ustawieniach tekstu, znak (") powinien być poprzedzony znakami modyfikacji w następującej formie: $\"
Tekst wyświetlany w nagłówku strony.
Podtekst wyświetlany w nagłówku strony.
Aby dodać nową linię do dowolnego z poniższych tekstów, użyj \r\n zamiast $\r$\n.
Tekst tytułowy wyświetlany na górze strony.
Dodatkowe miejsce na obszar tytułu.
Tekst wyświetlany na stronie.
Tekst wyświetlany na górze strony.
Tekst wyświetlany na dole strony.
Tekst wyświetlany na przycisku 'Zgadzam się'.
Wyświetla pole wyboru, które użytkownik musi zaznaczyć, aby zaakceptować postanowienia licencji.
Tekst wyświetlany obok pola wyboru zgody z postanowieniami licencji.
Wyświetla dwa przyciski typu radio, aby użytkownik mógł zaakceptować postanowienia licencji.
Tekst wyświetlany obok pola wyboru potwierdzania postanowień licencji.
Tekst wyświetlany obok pola wyboru odrzucania postanowień licencji.
Tekst wyświetlany na górze strony.
Tekst wyświetlany obok listy komponentów do zainstalowania.
Tekst wyświetlany obok pola kombinowanego typu instalacji.
Tekst wyświetlany na górze obszaru opisów instalowanych komponentów.
Tekst wyświetlany w obszarze pola opisów, gdy żadna z sekcji nie jest zaznaczona.
Tekst wyświetlany na górze strony.
Tekst wyświetlany na ramce kontrolki katalogu docelowego.
Zmienna, w której przechowywany jest wybrany katalog.
Domyślnie: $INSTDIR
Nie deaktywuje przycisku 'Dalej', gdy wybrany katalog jest nieprawidłowy. Pozwala jednak na użycie polecenia GetInstDirError w funkcji wyjścia, aby pobrać nieprawidłowy katalog.
Tekst wyświetlany na górze strony.
Tekst wyświetlany obok pola wyboru do wyłączania tworzenia katalogów Menu Start.
Domyślny katalog Menu Start.
Nie wyświetlaj pola wyboru, do wyłączania tworzenia skrótów w Menu Start.
Klucz rejestru do przechowywania katalogu Menu Start. Strona użyje tych danych, aby zapamiętać preferencje użytkownika. Powinieneś użyć go również w deinstalatorze, aby usunąć katalogi Menu Start. Nie zapomnij usunąć tego klucza podczas deinstalacji.
Dla deinstalatora, użyj makra MUI_STARTMENU_GETFOLDER, aby pobrać katalog Menu Start:
!insertmacro MUI_STARTMENU_GETFOLDER page_id $R0 Delete "$SMPROGRAMS\$R0\Twój skrót.lnk"
Tekst wyświetlany w nagłówku strony instalacji, gdy instalacja została zakończona (nie będzie wyświetlany, gdy używasz strony końcowej bez MUI_(UN)FINISHPAGE_NOAUTOCLOSE).
Podtekst wyświetlany w nagłówku strony instalacji, gdy instalacja została zakończona (nie zostanie wyświetlonym, gdy używasz strony końcowej bez MUI_(UN)FINISHPAGE_NOAUTOCLOSE).
Tekst wyświetlany w nagłówku strony instalacji, gdy instalacja została przerwana.
Podtekst wyświetlany w nagłówku strony instalacji, gdy instalacja została przerwana.
Aby dodać nową linię do dowolnego z poniższych tekstów, użyj \r\n zamiast $\r$\n.
Tekst tytułowy wyświetlany na górze strony.
Dodatkowe miejsce na obszar tytułu.
Tekst wyświetlany na stronie.
Dodatkowe miejsce dla obszaru tekstu (jeśli używasz pól wyboru).
Tekst wyświetlany na przycisku 'Zakończ'.
Włącz przycisk 'Anuluj', dzięki czemu użytkownik może pominąć opcje wyświetlane na końcowej stronie.
Tekst wyświetlany na końcowej stronie, przy zapytaniu o ponowny rozruch komputera.
Tekst wyświetlany obok przycisku opcji 'Uruchom ponownie teraz'.
Tekst wyświetlany obok przycisku opcji 'Sam uruchomię ponownie komputer później'.
Ustawia opcję 'Sam uruchomię ponownie komputer później' opcją domyślną.
Program, który użytkownik może uruchomić, zaznaczając pole wyboru. Nie musisz wstawiać znaków cudzysłowia w nazwie pliku, jeśli zawiera ona spacje.
Tekst wyświetlany obok pla wyboru 'Uruchom program'.
Parametry dla aplikacji do uruchomienia. Nie zapomnij o użyciu znaku modyfikacji $\".
Nie zaznaczaj domyślnie pola wyboru 'Uruchom program'
Wywołuje funkcję zamiast wykonania aplikacji (zdefiniuj MUI_FINISHPAGE_RUN bez parametrów). Możesz użyć funkcji do uruchomienia wielu aplikacji lub możesz zmienić nazwę pola wyboru i użyć go do innych celów.
Plik lub strona internetowa, którą użytkownik może otworzyć, po zaznaczeniu pola wyboru. Nie musisz wstawiać znaków cudzysłowia w nazwie pliku, jeśli zawiera ona spacje.
Tekst do wyswietlenia obok pola wyboru 'Pokaż plik Readme'.
Nie zaznaczaj domyślnie pola wyboru 'Pokaż plik Readme'
Wywołuje funkcję, zamiast wyświetlania pliku (zdefiniuj MUI_FINISHPAGE_SHOWREADME bez parametrów). Możesz użyć funkcji, aby wyświetlić wiele plików lub możesz zmienić nazwę pola wyboru i użyć go do innych celów.
Tekst dla łącza, które użytkownik może kliknąć, aby zobaczyć stronę internetową lub plik.
Strona internetowa lub plik, który użytkownik może wybrać, aby go otworzyć dzięki łączu. Nie musisz wstawiać znaków cudzysłowia w nazwie pliku, jeśli zawiera ona spacje.
Kolor tekstu dla łącza na stronie końcowej.
Domyślnie: 000080
Wyłącza wsparcie dla stron, które umożliwiają użytkownikowi na uruchamianie ponowne komputera. Zdefiniuj tę opcję, aby zachować trochę miejsca, jeśli nie używasz flag /REBOOTOK lub SetRebootFlag.
Tekst wyświetlany na górze strony.
Tekst wyświetlany obok pola tekstu lokalizacji deinstalacji.
Zmienna, w której przechowywany jest źródłowy katalog deinstalacji.
Domyślnie: $INSTDIR
Wstaw pliki językowe interfejsu nowoczesnego Modern UI dla języków, które chcesz dołączyć.
!insertmacro MUI_LANGUAGE "Polish"
Standardowe pliki językowe NSIS wczytywane są automatycznie, nie powinieneś zatem używać funkcji LoadLanguageFile.
Jeśli używasz kompresji typu Solid, pliki które są potrzebne jeszcze przed instalacją, powinny być przechowywane na górze bloku danych. Dzięki temu instalator jest szybszy. Dołącz polecenie rezerwacji plików przed sekcjami oraz funkcjami:
ReserveFile "ioFile.ini" ; Twoje pliki INI wtyczki InstallOptions !insertmacro MUI_RESERVEFILE_INSTALLOPTIONS ; Wtyczka InstallOptions !insertmacro MUI_RESERVEFILE_LANGDLL ; Okno dialogowe wyboru języka ...
Niektóre strony pozwalają na wyświetlanie dodatkowych informacji lub mogą przyjmować dane użytkownika. Poniżesz znajdziesz przykładowy kod wykorzystania tej funkcjonalności.
Strona wyboru komponentów nowowczesnego interfejsu użytkownika posiada kontrolkę tekstową, w której wyświetlony może być tekst z opisem poszczególnych komponentów. Pojawia się on po najechaniu kursorem myszki nad danym komponentem. Jeśli nie chcesz widzieć opisów, ustaw opcję MUI_COMPONENTSPAGE_NODESC.
Aby ustawić opis dla sekcji, do polecenia sekcji Section dodany musi być dodatkowy parametr identyfikujacy tę sekcję. Nazwa ta może być użyta do ustawienia opisu sekcji.
Section "Section Nazwa 1" Sekcja1 ... SectionEnd
Po zdefiniowaniu sekcji, użyj poniższych makr, aby ustawić opisy tych sekcji:
LangString DESC_Sekcja1 ${LANG_POLISH} "Opis dla sekcji 1." LangString DESC_Sekcja2 ${LANG_POLISH} "Opis dla sekcji 2." !insertmacro MUI_FUNCTION_DESCRIPTION_BEGIN !insertmacro MUI_DESCRIPTION_TEXT ${Sekcja1} $(DESC_Sekcja1) !insertmacro MUI_DESCRIPTION_TEXT ${Sekcja2} $(DESC_Sekcja2) !insertmacro MUI_FUNCTION_DESCRIPTION_END
Aby ustawić opisy sekcji w deinstalatorze, użyj makra MUI_UNFUNCTION_DESCRIPTION_BEGIN oraz MUI_UNFUNCTION_DESCRIPTION_END.
Wstaw kod do zapisu skrótów (używając polecenia CreateShortcut) pomiędzy makra MUI_STARTMENU_WRITE_BEGIN oraz MUI_STARTMENU_WRITE_END:
!insertmacro MUI_STARTMENU_WRITE_BEGIN page_id ; ...utwórz skróty... !insertmacro MUI_STARTMENU_WRITE_END
ID strony powinien być numerem ID strony, na której użytkownik wybrał katalog dla skrótów, które chcesz zapisać.
Zmienna, która zawiera katalog oraz numer ID strony, ustawiana jest jako parametr makra strony.
Jeśli chcesz, aby instalator wyświetlił okno dialogowe wyboru języka (spójrz na przykład MultiLanguage.nsi (../../Examples/Modern UI/MultiLanguage.nsi)), wstaw do funkcji .onInit makro MUI_LANGDLL_DISPLAY:
Function .onInit !insertmacro MUI_LANGDLL_DISPLAY FunctionEnd
Możesz również użyć tego makra dla deinstalatora, w funkcji un.onInit.
Aby zapamiętać preferencje użytkownika, możesz zdefiniować odpowiedni klucz w rejestrze. Te definicje powinny być ustawione przed wstawieniem makra strony instalacji.
Klucz rejestru do przechowywania języka. Preferencje użytkownika zostaną zapamiętane. Możesz również użyć tego dla deinstalatora, aby wyświetlić prawidłowy język. Nie zapomnij usunąć tego klucza w deinstalatorze.
W deinstalatorze, wstaw makro MUI_UNGETLANGUAGE w funkcji un.onInit, aby pobrać preferencje języka:
Function un.onInit !insertmacro MUI_UNGETLANGUAGE FunctionEnd
Aby dostosować interfejs okna dialogowego wyboru języka, użyj tych definicji przed wstawieniem makra MUI_LANGDLL_DISPLAY.
Tekst tytułowy okna dialogowego wyboru języka.
Tekst wyświetlany w oknie dialogowym wyboru języka.
Zawsze wyświetla okno dialogowe wyboru języka, nawet jeśli język przechowywany był w rejestrze Windows. Język przechowywany w rejestrze zostanie domyślnie zaznaczony.
Zawsze wyświetla wszystkie dostępne języki i nie filtruje ich ze względu na ich stronę kodową.
Jeśli chcesz dodać do instalatora niestandardowe strony, możesz wstawić ich polecenia pomiędzy makrami stron. Dokumentacja wtyczki InstallOptions szczegółowo opisuje tworzenie niestandardowych stron przy użyciu wtyczki InstallOptions.
!insertmacro MUI_PAGE_WELCOME Page custom NazwaFunkcji ; Strona niestandardowa !insertmacro MUI_PAGE_COMPONENTS ; Deinstalator !insertmacro MUI_UNPAGE_CONFIRM UninstPage custom un.NazwaFunkcji ; Strona niestandardowa !insertmacro MUI_UNPAGE_INSTFILES
W funkcji strony użyj makra MUI_HEADER_TEXT, aby ustalić tekst tytułu w nagłówku strony:
LangString PAGE_TITLE ${LANG_POLISH} "Tytuł" LangString PAGE_SUBTITLE ${LANG_POLISH} "Podtytuł" Function CustomPageFunction !insermacro MUI_HEADER_TEXT $(PAGE_TITLE) $(PAGE_SUBTITLE) !insertmacro MUI_INSTALLOPTIONS_DISPLAY "ioFile.ini" FuctionEnd
Funkcje interfejsu NSIS, takie jak funkcja .onGUIInit oraz funkcje stron są automatycznie dodawane przez nowoczesny interfejs użytkownika i zapełniane kodem, aby obsłużyć funkcjonalności nowego interfejsu. Jeśli zatem chcesz dodać do nich dodatkowy kod, stwórz niestandardową funkcję, której definicja opierać się będzie na nowoczesnym interfejsie użytkownika.
Przykład:
!define MUI_CUSTOMFUNCTION_GUIINIT MojaFunkcja_GuiInit Function MojaFunkcja_GuiInit ; ...twój kod... FunctionEnd
Poniższe definicje powinny być ustawione przed wstawieniem makr języka.
Funkcje wykrywające ruch myszki nad kontrolką dostępne są tylko wtedy, gdy używane są makra opisowe (MUI_FUNCTION_DESCRIPTION_BEGIN). Jeśli opisy komponentów do zainstalowania nie są używane, musisz użyć funkcji .onMouseOverSection oraz un.onMouseOverSection.
Te definicje powinny być ustawione przed wstawieniem makra strony.
Uwagi:
W funkcji poprzedzającej (PRE) strony powitalnej i końcowej możesz zapisać dane do pliku INI wtyczki InstallOptions (ioSpecial.ini).
W funkcji wyświetlającej (SHOW) strony powitalnej, końcowej oraz strony Menu Start, zmienna $MUI_HWND zawiera uchwyt HWND wewnętrznego okna dialogowego.
Te definicje powinny być ustawione przed pojedynczą stroną powitalną lub końcową.
Ta funkcja inicjująca wywoływana jest zanim plik INI wtyczki InstallOptions jest zapisywany, więc możesz w niej zainicjować dowolne zmienne używane w ustawieniach strony.
Stworzył: Joost Verburg.
Ikonki zaprojektował: Nikos Adamamas, aka adni18.
Podziękowania dla Amir Szekely, aka KiCHiK, za jego pracę nad NSIS.
Nowoczesny interfejs użytkownika Modern UI rozprowadzany jest na licencji zlib/libpng.
Copyright © 2002 - 2024 Joost Verburg This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages arising from the use of this software. Permission is granted to anyone to use this software for any purpose, including commercial applications, and to alter it and redistribute it freely, subject to the following restrictions: 1. The origin of this software must not be misrepresented; you must not claim that you wrote the original software. If you use this software in a product, an acknowledgment in the product documentation would be appreciated but is not required. 2. Altered versions must be plainly marked as such, and must not be misrepresented as being the original software. 3. This notice may not be removed or altered from any distribution.