반응형
아래 테스트는 STM32CubeIDE 1.6.1/STM32Cube_FW_F7_V1.16.1를 사용하여 테스트 되었습니다.
이번에는 STemWin을 사용하여 이미지 클릭시 이미지를 변경하는 테스트를 해 보았습니다.
간단히 이미지의 ON/OFF 동작으로 이해하시면 될 것 같습니다.
GUIBuilder를 사용하여 간단히 FrameWin에 ON/OFF용 Image 위젯을 하나씩 넣었습니다.
시뮬레이터를 사용하여 GUI를 먼저 확인 해 보았습니다.
이미지를 클릭할때마다 LED가 정상적으로 ON/OFF를 합니다.
새 프로젝트의 설정은 이전 게시글과 동일하게 생성하였습니다.
2024.07.06 - [Hardware/STM32] - [STM32F746G-DISCO] STemWin 사용하기 (Button widget)
이벤트 처리는 이미지 위젯의 ID의 WM_NOTIFICATION_CLICKED 이벤트를 받아서 처리를 하였습니다.
2개의 ID중 ID_IMAGE_0만 사용하고 hex로 변환된 2개의 이미지를 클릭할 때마다 번갈아 디스플레이되도록 하였습니다.
case WM_NOTIFY_PARENT:
Id = WM_GetId(pMsg->hWinSrc);
NCode = pMsg->Data.v;
switch (Id)
{
case ID_IMAGE_0:
switch (NCode) {
case WM_NOTIFICATION_CLICKED:
hItem = WM_GetDialogItem(pMsg->hWin, ID_IMAGE_0);
pData = _GetImageById(image_no ? ID_IMAGE_0_IMAGE_0 : ID_IMAGE_0_IMAGE_1, &FileSize);
IMAGE_SetBMP(hItem, pData, FileSize);
image_no ^= 1;
break;
}
break;
}
break;
실제 보드에 다운로드하여 동작을 확인해 보았습니다.
반응형
'Hardware > STM32' 카테고리의 다른 글
[STM32F746G-DISCO] STemWin 사용하기 (Graph widget) (0) | 2024.07.14 |
---|---|
[STM32F746G-DISCO] 칩 내부 온도센서 사용하기 (0) | 2024.07.14 |
[STM32F746G-DISCO] STemWin 사용하기 (Button widget) (0) | 2024.07.13 |
[STM32F746G-DISCO] STemWin 사용하기 (HelloWorld) (0) | 2024.07.13 |
[STM32F746G-DISCO] STemWin library 종류 (0) | 2024.07.12 |
댓글