はじめまして、パーシーです。
今SDK&DDKで(MFC非使用)、プロパティシート上のアイコンを変更させた場合に
ツールチップの文字列を一緒に変更するプログラムを作っているのですが、
ダイアログでは文字列変更通知イベント(TTN_NEEDTEXT)がきたのに、プロパティ
シートではうまくできません。ご存知の方、ご教授願います。
例)ソースはかなり省かれてます
LRESULT DlgProc(
HWND hDlg,
UINT msg,
WPARAM wParam,
LPARAM lParam)
{
HWND tip;
TOOLINFO tin;
HWND hBtn;
switch(msg){
case WM_INITDIALOG:
tip=CreateWindowEx(0,
TOOLTIPS_CLASS,
NULL,
WS_POPUP | TTS_ALWAYSTIP,
CW_USEDEFAULT,
CW_USEDEFAULT,
CW_USEDEFAULT,
CW_USEDEFAULT,
hDlg,
NULL,
hInst
NULL);
SendMessage(tip,TTM_SETMAXTIPWIDTH,0,GetSystemMetrics(SM_CXSCREEN));
hBtn=GetDlgItem(hDlg,PCT_Orientation);
ZeroMemory(&tin,sizeof(tin)) ;
tin.cbSize=sizeof(TOOLINFO);
tin.uFlags=TTF_IDISHWND|TTF_SUBCLASS;
tin.lpszText = LPSTR_TEXTCALLBACK;
tin.hwnd=hDlg;
tin.uId=(WPARAM)hBtn;
SendMessage(tip,TTM_ADDTOOL,(WPARAM)NULL,(LPARAM)&tin);
break;
case WM_NOTIFY:
switch( ((NMHDR FAR *)lParam)->code) {
case TTN_NEEDTEXT: // ←ここに来ない
break;
}
}
}
ツイート | ![]() |