MFC初学者问题。
我分别使用CListBox::Create和CButton::Create创建了一个列表框和一个按钮,使用CRect表示它们的大小和位置。这两个CRect具有相同的高度,但是当它们显示在屏幕上时,列表框的高度比按钮的要短。
我使用鼠标单击事件处理程序OnLButtonDown检查像素坐标,并注意到按钮的大小和位置是正确的。底部坐标的CListBox不正确。为什么会发生这种情况?
我用来创建列表框的选项是WS_CHILD | WS_VISIBLE | LBS_STANDARD,按钮使用了WS_CHILD | WS_VISIBLE | BS_PUSHBUTTON。我试着移除LBS_STANDARD,但仍然没有改变高度。
CListBox上的MSDN::Create仅描述了以下内容:
矩形 指定列表框大小和位置。可以是CRect对象,也可以是RECT结构。
我错过了什么吗?
发布于 2022-09-10 23:51:43
添加LBS_NOINTEGRALHEIGHT样式:
指定列表框的大小与应用程序创建列表框时指定的大小完全相同。通常,系统会调整列表框的大小,这样列表框就不会显示部分项。
https://stackoverflow.com/questions/73675909
复制相似问题