본문 바로가기
728x90

WinAPI12

다시 공부 하는 Win API (12) - UI - Inventory 제작(4) 저번 했던 것에 이어서 Equipment 제작을 하겠다 우선 EquipPanel.h 파일을 만들고화면에 출력해줄 장착아이템에 대한 정보 render를 통해서 표출다음 InventoryScene.cpp에서 Equippanel만들어 생성해주기이제 아이템을 장착하기 위한 코드 InventoryItem.h에서 아이템을 장착하기 위한 버튼 생성 Update, isEquiped, equipButton추가 버튼에 따른 이벤트 동작을 위한 OnClickEquip 추가 해주고OnClickEquip의 동작을 위해 EquipPanel.h에서 장비장착 함수 매개변수는 보이드포인터로 받아주고장비데이터 이벤트매니저에 보내줌그다음 InventoryItem으로 이동해 이벤트매니저에서 장비 데이터값 받아주기 InventroyItem에.. 2025. 12. 29.
다시 공부 하는 Win API (11) - UI - Inventory 제작(3) 저번 글에서 상점을 통한 구매 기능을 구현해보았으니판매 기능을 만들어 보겠습니다.일단 인벤토리에 있는 아이템을 클릭 했을 경우 이펙트를 주기 위해 HPEN추가 및 bool 변수로 클릭됐는지 여부 확인하고cpp에서 생성,소멸, 렌더해준 뒤보이드포인터를 받는 Onclick 함수하나를 선언하여 클릭 이벤트를 정의한다.다음 이벤트관리에서 기존에 키 밸류로 관리하던 해시맵 이벤트를밸류를 벡터로 관리해서 이벤트를 여러개 저장할 수 있도록 바꾼다. 이렇게 하고 실행해보면 스토어에서 아이템을 구매하고 인벤토리에서 구매된 아이템을 클릭하면 선택이 되어지는 것을 볼 수 있다.하지만 아이템을 선택하였을때, 나오는 테두리가 옆에 있는 아이템의 경계선을 넘어가는 것이 확인이 되는데 이부분을 자연스럽게 만들기 위해 아이템간.. 2025. 12. 24.
다시 공부 하는 Win API (10) - UI - Inventory 제작(2) 전 글에서 경로 오류로 파일을 읽지 못했었는데폴더를 정리 한 후 다시 해보니 되었다 DataManager에 아이템 수량 표시 함수를 만들어 주고이제 각 패널들을 만들어준다.우선 Store상점 패널 먼저 만들어 보겠다. Object폴더 안에 Inventory폴더를 만들고 해당 폴더 안에 StorePanel을 만들어 준다.다음 Goods.h를 만들어 스토어 패널에 올려줄 아이템의 정보들을 올려준다하고 실행해서 Store를 클릭하면 내가 설정한 아이템 목록이 잘 뜨는 것을 확인할 수 있다. 이제 InventoryPanel.h를 만들어 인벤토리 패널을 만들어 보자일단 그전에 패턴에 대해서 하나 알고가면 좋다 1. 옵저버 패턴부모자식관계에서 많이 쓰는 패턴으로 조금 복잡하다.지금 UI를 만들면서 확실한건 매우 .. 2025. 12. 22.
다시 공부 하는 Win API (9) - UI - Inventory 제작(1) 저번 버튼을 통한 간단한 이벤트 구현에 대한 공부를 하였다이제 더 나아가 여러 UI 중 Inventory를 구현 해보고자 한다. 우선 구현하기에 앞서 저번 버튼을 구현할때 버튼 구분을 위한 텍스트를 버튼위에 생성을 해주었는데 텍스트가 생성되는 사각형 경계안은 흰색으로 처리가되어 조금 불편함이 있었기에 이것을 먼저 바꾸어준다.GameManger.cpp파일로 이동하여 생성자 부분에 SetBkMode기능을 사용하면 깔끔하게 나오게 된다. Scene파일에 InventoryScene.h파일을 만들고 필요한 버튼과 기능에 대한 선언 및 정의를 해준다.색상은 저번에 했던 빨주파는 가독성이 많이 떨어지는 느낌이라 흰색에서 점점 어두워지는 효과로 나타나도록 바꾸었다.다음 글꼴 또한 좀 더 다른 것으로 바꾸기 위해 본인이.. 2025. 12. 12.
728x90