MFC에서 메뉴부분에 체크선택.
김자영
2024.08.28
pCmdUI-SetCheck(m_nPenThickness == (int)(pCmdUI-m_nID - ID_PEN_1PIXEL+1));
메뉴에 세개의 선택이 있을 경우, 첫번째를 선택하면 거기 체크되고, 두번째하면 두번째에 되고..
이런식으로 구현되는 건데요..
SetCheck()안에는 0과 1만 들어가는거 아닌가요, 안의 내용은(m_nPenThickness == (int)(pCmdUI-m_nID - ID_PEN_1PIXEL+1))
true false로만 나오는게 아닌지..
제가 주석 처리하고 SetCheck()안에 인자를 1로 두었더니 세개가 전부가 체크가 되더군요..
이게 도대체 무슨 일인지..
아리송 하군요.. 허허 하루종일
백문이 불여일타하고 있음다.. 많은 도움 주시면 감사하겠네요..
모두들 ... 열공하시구요..
-
화1이트 2024-08-28
감사합니다. 좋은 하루되세요!!
-
초코맛캔디 2024-08-28
SetCheck의 인자값으로는 BOOL형일테구요. 값으로 TRUE, FALSE가 올수있는데.. TRUE나 FALSE는 1, 0을 각각 나타내는 매크로로 되어 있습니다. true/false로는 c++에서 bool이라는 자료형이 따로 존재합니다. 생각보면 mfc는 api를 클래스로 래핑했고 win32 api는 c언어로 되어 있으니 당연한 얘기겠죠. ^^