怎么样调整属性页的大小?

tesling 2005-08-26 12:39:41
我在CFormView中加了一个属性框,并在属性框中加了两个属性页.
CMyPropSheet::CMyPropSheet(CWnd *pParentWnd)
:CPropertySheet(AFX_IDS_APP_TITLE,pParentWnd)
{
AddPage(&m_MyPage1);
AddPage(&m_MyPage2);
}
我在CFormView中初始化占位符和属性框大小:
CRect rectTemp;
this->GetWindowRect(rectTemp);
pwndPropSheetHolder->SetWindowPos(NULL,0,0,rectTemp.Width(),rectTemp.Height(),0);
pwndPropSheetHolder->GetWindowRect(rectTemp);
m_pMyPropSheet->SetWindowPos(NULL,0,0,rectTemp.Width(),rectTemp.Height(),SWP_NOZORDER|SWP_NOACTIVATE);
但运行结果只是占位符充满了速个CFormView视图,属性框只是跟最大的那个属性页一样大.
问:怎么样用语句调整属性页的大小??
...全文
195 7 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
bager 2005-09-14
  • 打赏
  • 举报
回复
参见以下链接
http://support.microsoft.com/default.aspx?scid=kb;en-us;300606
cgsmarter 2005-09-13
  • 打赏
  • 举报
回复
应该这样:
在CMyPropSheet初始化:
CRect rectTemp;
this->GetWindowRect(rectTemp);
pwndPropSheetHolder->SetWindowPos(NULL,0,0,rectTemp.Width(),rectTemp.Height(),0);
pwndPropSheetHolder->GetWindowRect(rectTemp);
m_pMyPropSheet->SetWindowPos(NULL,0,0,rectTemp.Width(),rectTemp.Height(),SWP_NOZORDER|SWP_NOACTIVATE);
菜牛 2005-08-28
  • 打赏
  • 举报
回复
属性页的大小根据你所加载的页面对话框调整,只要调整资源中的对话框定义即可。
vcmute 2005-08-26
  • 打赏
  • 举报
回复
CMyPropSheet重载OnInitDialog中
CProppertySheet::OnInitDialog()
后MoveWindow


tesling 2005-08-26
  • 打赏
  • 举报
回复
难道大家在制作属性框时没有遇到这样的问题么???

在一个Form视图中有一个属性框,当改变Form视图时要求属性框大小跟着改变..到底应该怎么样做呢?
tesling 2005-08-26
  • 打赏
  • 举报
回复
我也想到在属性页里初始化,但是
class CMyPage1 : public CPropertyPage
{
...
}
属性页继承于CPropertyPage类,里面没有::OnInitDialog()函数啊.
类CPropertySheet里面倒是有OnInitDialog()函数..
class CMyPropSheet : public CPropertySheet
{...}
但是如果在CMyProSheet里面调整在属性页大小的话,属性页会把属性框上的小标签盖掉,就是说很难调整属性页到合适的大小,.
不信大家试试看..
这个问题我搞了很久也没搞出来...
lixiaosan 2005-08-26
  • 打赏
  • 举报
回复
CMySheet::OnInitDialog()
{
MoveWindow(...);//或者SetWindowPos
}

15,978

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 界面
社区管理员
  • 界面
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧