当前位置:编程学习 > VC++ >>

求助 vc++

本人现在想在一个属性页对话框的第一页上面设置一个按扭,当点击时就跳到第二页, 请问要怎么实现。
属性页的代码如下:
新建一个基于对话框的工程。
在主对话框类里加入一个CPropertySheet类的一个成员变量(m_sheet)代表整个属性页。再加入一些各子对话框类的实例作为成员变量(m_page1、m_page2)。

在主对话框类的OnInitDialog()函数中加入:

//加入标签,标签名由各个子对话框的标题栏决定
m_sheet.AddPage(&m_page1);
m_sheet.AddPage(&m_page2);
//用Create来创建一个属性页
m_sheet.Create(this, WS_CHILD | WS_VISIBLE, WS_EX_CONTROLPARENT);

RECT rect;
m_sheet.GetWindowRect(&rect);
int width = rect.right - rect.left;
int height = rect.bottom - rect.top;

//调整属性页的大小和位置
m_sheet.SetWindowPos(NULL, 10, 10, 0, 0, SWP_NOSIZE | SWP_NOZORDER | SWP_NOACTIVATE);


本人现在想在一个属性页对话框的第一页上面设置一个按扭,当点击时就跳到第二页, 请问要怎么实现。详细点,呵呵。本人刚接触vc,毕业设计要用, 请大虾指教!!!
谢谢
问题补充:另外一个问题:怎样获得图片控件的位置,GetClientRect好像获得的rect是控件的大小,左上点都是(0,0)。有没有别的函数或者方法。再谢...
to Sadusaga:谢谢你的回答,这个问题我已经解决了,应该用SetActivePage才对,第二个问题谁能帮我回答一下
答案:
使用如下方法: 
RECT r;
::GetWindowRect(GetDlgItem(IDC_BUTTON1)->m_hWnd, &r);

只需要把IDC_BUTTON1变成您的图片控件的ID就可以了。

或者
RECT r;
GetDlgItem(IDC_BUTTON1)->GetWindowRect(&r);
这个是MFC的使用方法,头一种方法是SDK混合MFC的方法。


如果是希望获取相对于对话框的位置,可以用
RECT rDlg;
GetWindowRect(&rDlg);
先获取Dlg的位置和尺寸,然后计算出来。

上一个:vc++问题
下一个:什么是VC++ [编程]

CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,