- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我看到了这个question但答案中的链接不再有效。
我的任务应该很简单。我在 CMFCPropertySheet
上有几个页面,我想利用 IDE 中新的动态调整大小功能。所以我设置了控件的大小调整,唉,当在工作表中显示时,无法调整工作表/页面的大小。
尝试上述资源失败。
CMyPropertySheet
的 header :
CMyPropertySheet
的来源:
为了测试,我刚刚创建了一个对话框应用程序并添加了一个页面并将其分配给该工作表。
我只想支持属性表/页面的动态调整大小。我缺少什么,实际上是否还需要这些代码?
最佳答案
这是我想出的另一个答案。我突然想到,我们没有理由不使用新的动态布局功能。只是动态布局指针以 NULL
开头。
如果您将以下私有(private)方法添加到您的派生属性表类:
void CResizingMFCPropertySheet::SetupDynamicLayout()
{
EnableDynamicLayout(TRUE);
auto pManager = GetDynamicLayout();
if (pManager != nullptr)
{
pManager->Create(this);
// The navigation control only needs to be stretched vertically
pManager->AddItem(m_pNavigationControl->GetSafeHwnd(),
CMFCDynamicLayout::MoveNone(), CMFCDynamicLayout::SizeVertical(100));
// The resize control needs to be moved 100% in both directions
pManager->AddItem(m_lblResize.GetSafeHwnd(),
CMFCDynamicLayout::MoveHorizontalAndVertical(100, 100), CMFCDynamicLayout::SizeNone());
for (CWnd *child = GetWindow(GW_CHILD); child; child = child->GetWindow(GW_HWNDNEXT))
{
if (child->GetSafeHwnd() != m_lblResize.GetSafeHwnd() &&
child->GetSafeHwnd() != m_pNavigationControl->GetSafeHwnd())
{
// All buttons need to be moved 100% in all directions
if (child->SendMessage(WM_GETDLGCODE) & DLGC_BUTTON)
{
pManager->AddItem(child->GetSafeHwnd(),
CMFCDynamicLayout::MoveHorizontalAndVertical(100, 100), CMFCDynamicLayout::SizeNone());
}
else // This will be the main tab control which needs to be stretched in both directions
{
pManager->AddItem(child->GetSafeHwnd(),
CMFCDynamicLayout::MoveNone(), CMFCDynamicLayout::SizeHorizontalAndVertical(100, 100));
}
}
}
}
}
并从 OnInitDialog
调用它,这样您就不需要任何 OnSize
事件处理程序,也不需要任何类型的手动绘图。
关于mfc - 使用动态布局调整 CMFCPropertySheet 的大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50955709/
我最近开始使用无表格 CSS 编写我所有的布局,但仍然更喜欢旧表格样式。快多了。无论如何,我陷入了这个即将完成的布局,但我需要一个小细节的帮助,我无法修复。 这里是测试地址: http://www.s
我正在尝试将节点形状的大小调整为节点文本的大小。我按照 https://github.com/cytoscape/cytoscape.js/issues/649 的指示进行操作。但是: 形状始终以高度
我是一名优秀的程序员,十分优秀!