1

我正在尝试在 windows mobile 6.1 上创建所有者绘制的列表框我LBS_OWNERDRAWFIXED在创建列表框控件时指定了样式。我正在处理WM_MEASUREITEMWM_DRAWITEM因此。

我想在其字体更改时更改列表框项的高度(我WM_SETFONT在创建控件后使用更改它)。问题是WM_MEASUREITEM消息只发送一次。我需要一种WM_MEASUREITEM再次生成消息的方法,以便我可以将项目的高度设置为字体的高度。我看过文章http://www.codeguru.com/Cpp/controls/listview/advanced/article.php/c1013/,但它使用 MFC,而我正在使用 WINAPI 直接开发此控件。一些文章提到调整控件大小会WM_MEASUREITEM再次生成消息。但是,在我的情况下它没有生成。

请让我知道是否有任何方法可以在 windows mobile 中实现这一点。

4

1 回答 1

0

该代码中没有什么特别的 MFC。OnSetFont 简单地说就是处理 WM_SETFONT。MeasureItem 在 MyListCtrl 中处理发送给其父级的 WM_MEASUREITEM。

至于在调整窗口大小时生成一个新的 WM_MEASUREITEM,你不能在处理 WM_SIZE/WM_SIZING 时只做一个 SendMessage 吗?

于 2010-02-10T14:35:35.667 回答