NSIS - Section을 선택할 때 라디오버튼 기능을 넣자!

라디오 버튼 기능을 하려면 몇 가지 순서가 있습니다.

1. Sections.nsh 라는 NSIS에서 제공하는 섹션 관리 헤더파일 참조.

2. 섹션에 섹션인덱스 값을 부여한다.

3. .onInit 함수에 섹션의 선택값을 특정 변수에 저장한다. (주로 $1같은 변수..)

4. .selOnChange 에서 매크로를 이용하여 구현한다.



1.일단 기본적으로 Section 관련 내용을 선언해둔 파일을 집어넣어야 합니다.

!include "Sections.nsh"

이걸로 자신의 스크립트안에 섹션 관리 헤더파일을 집어넣습니다.


2.이제 섹션에 섹션 인덱스 값을 부여해야죠

예) Section "fsfds" abc

이렇게 하면 fsfds라는 섹션에 abc라는 섹션인덱스 변수를 설정한 것 입니다.

NSIS는 abc라는 섹션인덱스 변수를 통해 fsfds에 접근하는거죠

abc는 NSIS에서 쓸때는 ${abc}라고 적습니다.


3. 이제 .onInit 함수를 만듭니다.

예)

Function .onInit

StrCpy $1 ${g1o1}

FunctionEnd

만약, Section "fsfds" abc

Section "qwrqweq" qew

이렇게 두 개의 섹션을 라디오 버튼으로 만들려고 하고 이중에 abc를 기본선택으로 두려면 위와 같이 함수를 만들면 됩니다.


4. .onSelChange 함수를 만듭니다.

Function .onSelChange

!insertmacro StartRadioButtons $1

!insertmacro RadioButton ${abc}

!insertmacro RadioButton ${qew}

!insertmacro EndRadioButtons


FunctionEnd

abc와 qew라는 섹션 인덱스가 어디에 쓰였는지만 보면 쉽게 적용가능합니다.

'Programming > tool' 카테고리의 다른 글

NSIS 값 읽어오기  (0) 2010.03.18
NSIS 기초지식  (0) 2010.03.18
같은 페이지에 계속 머무르기  (0) 2010.03.18
사용자 페이지 추가하기  (0) 2010.03.18
실행순서  (0) 2010.03.18

+ Recent posts