#GWC UI Library : ToolButton

웹 UI 라이브러리인 GWC에서 제공하는 Select 컴포넌트에 대한 예제 코드입니다.

먼저 DOM 구성은 다음과 같습니다.

그리고 CSS 구성은 다음과 같구요.

.center {
    display: flex;
    width: 100%;
    height: 100%;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    gap: 1em;
}

.center > div {
    display: flex;
    gap: 1em;
}

js 코드는 다음과 같습니다.

window.onload = () => {
    toolbutton1.addEventListener("click", () => { 
        gwcMessage("안녕하세요! GWC 라이브러리입니다.");
    });

    toolbutton2.addEventListener("statechange", (event) => {
        const tb = event.target;
        label.content = `${tb.id}가 ${tb.pressed?"DOWN":"UP"}된 상태입니다.`;
    });

    toolbutton2.addEventListener("click", () => {
        toolbutton2.pressed = !toolbutton2.pressed;
    });

    toolbutton3.addEventListener("click", () => {
        toolbutton3.disabled = true;
    });
};

실행 결과는 다음과 같습니다.

title 속성으로 간단한 툴팁을 표현할 수 있습니다.

#GWC UI Library : Select

웹 UI 라이브러리인 GWC에서 제공하는 Select 컴포넌트에 대한 예제 코드입니다.

먼저 DOM 구성은 다음과 같습니다.

인간은 말이 아닌 행위로 정의된다.
인간은 말이 아닌 행위로 정의된다.

그리고 CSS 구성은 다음과 같구요.

.center {
    display: flex;
    width: 100%;
    height: 100%;
    justify-content: center;
    align-items: center;
}

.panel {
    display: flex;
    gap: 2em;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}

.vcenter {
    display: flex;
    align-items: center;
    gap: 0.2em;
}

#select1, #select2 {
    width: 20em;
}

js 코드는 다음과 같습니다.

window.onload = () => {
    select2.setItems(["인간은", "말이 아닌", "행위로 정의된다."]);
    select2.selectedIndex = 3;

    button.addEventListener("click", () => {
        gwcMessage(`
            select1: ${select1.value}
select2: ${select2.value} `); }); const onChange = (event) => { const select = event.target; label.content = ` ${select.id} 값이 "${select.value}"(으)로 변경되었습니다.`; }; select1.addEventListener("change", onChange); select2.addEventListener("change", onChange); GeoServiceWebComponentManager.instance.update(); };

실행 결과는 다음과 같습니다.

#GWC UI Library : Label

웹 UI 라이브러리인 GWC에서 제공하는 Label 컴포넌트에 대한 예제 코드입니다.

먼저 DOM 구성은 다음과 같습니다.

그리고 CSS 구성은 다음과 같구요.

.center {
    display: flex;
    width: 100%;
    height: 100%;
    justify-content: center;
    align-items: center;
}

.panel {
    display: flex;
    gap: 0.4em;
    flex-direction: column;
    padding: 1em;
}

.vcenter {
    display: flex;
    align-items: center;
    gap: 0.2em;
}

실행 결과는 다음과 같습니다.

속성의 text-align을 지정할 수 있으며 값은 left, center, right입니다. 예시는 다음과 같습니다.


#GWC UI Library : Switch

웹 UI 라이브러리인 GWC에서 제공하는 Switch 컴포넌트에 대한 예제 코드입니다.

먼저 DOM 구성은 다음과 같습니다.

그리고 CSS 구성은 다음과 같구요.

.center {
    display: flex;
    width: 100%;
    height: 100%;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    gap: 3em;
}

#switch1 {
    margin-right: 5em;
}

js 코드는 다음과 같습니다.

window.onload = () => {
    const switch1 = document.querySelector("#switch1");
    switch1.addEventListener("change", (event) => {
        if(event.target.on) {
            switch1.label = "맑은 날~";
        } else {
            switch1.label = "비가 오나요?";
        }
    });

    const switch2 = document.querySelector("#switch2");

    document.querySelector("#button1").addEventListener("click", () => {
        alert(`switch1: ${switch1.on} / switch2: ${switch2.on}`);
    });

    document.querySelector("#button2").addEventListener("click", () => {
        switch1.on = !switch1.on;
    });

    document.querySelector("#button3").addEventListener("click", () => {
        switch2.disabled =  !switch2.disabled;
    });
};

실행 결과는 다음과 같습니다.

#GWC UI Library : Button

웹 UI 라이브러리인 GWC에서 제공하는 Button 컴포넌트에 대한 예제 코드입니다.

먼저 DOM 구성은 다음과 같습니다.

그리고 CSS 구성은 다음과 같구요.

.center {
    display: flex;
    width: 100%;
    height: 100%;
    justify-content: center;
    align-items: center;
    gap: 1em;
}

js 코드는 다음과 같습니다.

window.onload = () => {
    const button1 = document.querySelector("#button1");
    button1.addEventListener("click", () => { 
        alert("안녕하세요~! GWC 라이브러리입니다.") 
    });

    const button2 = document.querySelector("#button2");
    button2.addEventListener("click", () => {
        if(button2.title === "버튼2") button2.title = "Button2";
        else button2.title = "버튼2";
    });

    const button4 = document.querySelector("#button4");
    button4.addEventListener("click", () => {
        alert("버튼4를 클릭했습니다.");
    });

    const button3 = document.querySelector("#button3");
    button3.addEventListener("click", () => {
        button4.disabled = !button4.disabled;
    });
};

실행 결과는 다음과 같습니다.