松尾です。 On 2022/05/15 23:14, NAGATA Shinya wrote: > - ほかに WM_SETICON しているところで高解像度対応する > keycode.cpp, ftdlg.cpp, ftdlg_lite.cpp, tekwin.cpp, ttmmain.cpp r9940までで対応しました。 > - SetVTIcon() の呼び出し方 > エクスポート関数のほうがいい気がする。 関数へのポインタを入れるのはいったんやめてみようと思います。 > - SetCustomNotifyIcon() が使われなくなってしまった > CustomIcon は「Windows 2000 のときに同じ図柄の 4bit アイコン」のために > しか使われていないが、本来は「通知アイコンに、VTウィンドウのアイコンとは > 違うアイコンを使うことができる」設計だと思う。 > SetVTIcon() の中でまとめて処理するのではなく、別々に呼び出したほうが > この設計に沿っている気がする。 わたしも同様に感じます。 ソースを見ていて気づいたのですが ttmmain.cpp 内の次の3関数(2メッセージ)が気になります。 - BOOL CCtrlWindow::OnEraseBkgnd(HDC DC) - void CCtrlWindow::OnPaint() - WM_ICONERASEBKGND - HCURSOR CCtrlWindow::OnQueryDragIcon() - WM_QUERYDRAGICON どうもアイコンに関連ありそうなのですが、 vtwin.cpp ではメッセージをハンドルしていなくて アイコン関連で特におかしい動作はしていないように思います。 どの関数にも"for icon drawing in Win NT 3.5" という コメントがついていて NT3.5固有なのかな?と思わせます。 調べるとメッセージはありそうなのですが うまく動作しているようだし・・ どうしたものでしょう?