<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>버튼 on kenji.blog</title><link>http://kenji.blog/ko/tags/%EB%B2%84%ED%8A%BC/</link><description>Recent content in 버튼 on kenji.blog</description><generator>Hugo -- gohugo.io</generator><language>ko</language><copyright>kenjinote</copyright><lastBuildDate>Sat, 14 Jan 2023 20:24:00 +0900</lastBuildDate><atom:link href="http://kenji.blog/ko/tags/%EB%B2%84%ED%8A%BC/index.xml" rel="self" type="application/rss+xml"/><item><title>버튼에 대하여</title><link>http://kenji.blog/ko/p/%E3%83%9C%E3%82%BF%E3%83%B3%E3%81%A4%E3%81%84%E3%81%A6/</link><pubDate>Sat, 14 Jan 2023 20:24:00 +0900</pubDate><guid>http://kenji.blog/ko/p/%E3%83%9C%E3%82%BF%E3%83%B3%E3%81%A4%E3%81%84%E3%81%A6/</guid><description>&lt;img src="http://kenji.blog/p/%E3%83%9C%E3%82%BF%E3%83%B3%E3%81%A4%E3%81%84%E3%81%A6/img.png" alt="Featured image of post 버튼에 대하여" />&lt;h1 id="버튼이란">버튼이란
&lt;/h1>&lt;p>버튼은 GUI 컨트롤 중 하나로 Windows 표준 API를 통해 구현할 수 있습니다.
화면 상의 영역을 클릭(마우스 왼쪽 버튼 다운, 마우스 왼쪽 버튼 업)하면,
프로그램에서 지정한 처리를 실행할 수 있습니다.&lt;/p>
&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt"> 1
&lt;/span>&lt;span class="lnt"> 2
&lt;/span>&lt;span class="lnt"> 3
&lt;/span>&lt;span class="lnt"> 4
&lt;/span>&lt;span class="lnt"> 5
&lt;/span>&lt;span class="lnt"> 6
&lt;/span>&lt;span class="lnt"> 7
&lt;/span>&lt;span class="lnt"> 8
&lt;/span>&lt;span class="lnt"> 9
&lt;/span>&lt;span class="lnt">10
&lt;/span>&lt;span class="lnt">11
&lt;/span>&lt;span class="lnt">12
&lt;/span>&lt;span class="lnt">13
&lt;/span>&lt;span class="lnt">14
&lt;/span>&lt;span class="lnt">15
&lt;/span>&lt;span class="lnt">16
&lt;/span>&lt;span class="lnt">17
&lt;/span>&lt;span class="lnt">18
&lt;/span>&lt;span class="lnt">19
&lt;/span>&lt;span class="lnt">20
&lt;/span>&lt;span class="lnt">21
&lt;/span>&lt;span class="lnt">22
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-fallback" data-lang="fallback">&lt;span class="line">&lt;span class="cl">// 버튼 생성
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">CreateWindow(
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> TEXT(&amp;#34;BUTTON&amp;#34;),
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> TEXT(&amp;#34;Close&amp;#34;),
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> WS_CHILD|WS_VISIBLE,
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> 10,10,128,30,
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> hWnd,
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> (HMENU)ID_BUTTON1,
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> ((LPCREATESTRUCT)lParam)-&amp;gt;hInstance,
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> 0);
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> ...
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> // 클릭되었을 때 OS에서 윈도우로 WM_COMMAND 메시지가 전송됩니다.
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> case WM_COMMAND:
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> switch(LOWORD(wParam))
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> {
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> case ID_BUTTON1:
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> SendMessage(hWnd,WM_CLOSE,0,0);
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> break;
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> }
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> break;
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;p>샘플 코드는 아래에 게재되어 있습니다.
&lt;a class="link" href="https://github.com/kenjinote/button" target="_blank" rel="noopener"
>button&lt;/a>&lt;/p></description></item></channel></rss>