c++ - 从 mfc 向导中删除水平分隔线

标签 c++ mfc dialog

我有一个 mfc 向导,我在其中实现了可调整大小的代码。向导对话框底部有一条水平分隔线,如图中红色箭头所示,我需要去掉它。

wizard dialog with unwanted line

因为我不知道该行的 ID,所以我没有将它包含在我的调整大小代码中。正因为如此,当我调整向导大小时,该行不断弄乱对话框。

Resized wizard

如果能找到分隔符的 ID 或者删除它的方法,那将是一个很大的帮助。 谢谢。

最佳答案

在我的机器 (Win8.1) 上,ID 是 3026,如 Spy++ 所示;看看它在您和/或其他机器上是否相同。否则您仍然可以枚举所有窗口并查找具有 STATIC 窗口类的窗口。然后只需 DestroyWindow() 即可。

也就是说,我不认为这条线是这里的问题;问题是您的对话框没有正确重绘自身。我推测这是由于它假设了一个固定的大小。向导不能调整大小(参见 http://msdn.microsoft.com/en-us/library/windows/desktop/bb774544%28v=vs.85%29.aspxhttp://msdn.microsoft.com/en-us/library/windows/desktop/bb246463%28v=vs.85%29.aspx )。我认为,即使您破坏了该行,您放置在那里的其他内容也会被错误地无效化。

也许您可以通过手动无效或使用各种与剪辑相关的窗口样式来解决这个问题。然而,真正的答案是“不要那样做”。

关于c++ - 从 mfc 向导中删除水平分隔线,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25257443/

相关文章:

c++ - QTableView选择单个单元格

c++ - UnicodeString 兼容性问题

c++ - CStatic 问题的背景颜色

c++ - 耦合 MFC CListCtrl 和 CTreeCtrl 以获得整个树的 View ,而不仅仅是一次一个节点

javascript - 使用 JQuery 在跨度中添加跨度

c++ - gluProject() 的奇怪结果

C++:将字符串和填充内容拆分为 std::vector 的优雅方式

RichEdit 中的 Unicode RTF 文本

jsf-2 - 处理 ViewExireException/ajax 并显示 Primefaces 对话框

ANDROID:如何从所有窗口顶部的通知或长按搜索按钮启动弹出对话框?