2012-08-23 9 views
0

내부에 대화 상자와 그림 컨트롤이 있습니다. 의 OnInitDialog 동안 나는 오류 여기GetDlgItemInt는 0을 반환합니다.

가 말한다 0이

CWnd *dialogHandle; // Handle of the dialog 
CWnd *itemHandle; // Handle of the picture control 
BOOL error; 
dialogHandle->GetDlgItemInt(itemHandle->GetDlgCtrlID(), &error, 0); 

그러나 GetDlgItemInt 기능 설정 오류와 같은 그림 컨트롤의 텍스트 부분을 얻기 위해 자원 라인입니다 시도

CONTROL 65443, IDC_PICTURE, "Static", SS_BITMAP, 13, 13, 40, 40 

이 번호가 필요합니다. 65443

답변

1

원하는 GetWindowLong (hWnd, GWL_ID); (또는 MFC 상당)

GetDlgItemInt()는 GetDlgItemText()를 둘러싼 atoi() 래퍼이며 ID가 아닌 컨트롤의 레이블을 읽습니다.

+0

GWLP_ID IDC_PICTURE에 해당 나는 아주 가까운 답변을 주셔서 감사합니다. – Cihan

+0

나는 컨트롤의 ID를 원하지 않습니다. 65443은 정적 컨트롤에서 보여 주려는 비트 맵의 ​​ID입니다. 나는 그것을 원한다. Hovewer GWLP_ID는 컨트롤의 ID입니다. 65923 – Cihan

0

GetDlgItemInt() 제어 할 수없는 텍스트가 있어야합니다. 두 번째 매개 변수는 '오류'플래그가 아닌 '변환 된'플래그라고합니다. 이게 진짜 당신이 찾고있는 방법인가요? 나는 네가 다른 것을 필요로한다고 생각해.

+0

예 뭔가 다른 것을 찾고있을 수도 있지만 실제로 생각할 필요가 없습니다. 텍스트에는 잘 작동하고 정수에는 사용할 수 있다고 느꼈습니다 : \ 지금까지 – Cihan

관련 문제