问题--大小? 欲知!哎,不得其界 求救
问题是这样的(简单--但我没能会,大家别笑话我)
如何知道窗口的大小,位置(当然主窗口相对显示屏了,子窗口相对主窗口),
如:主对话框MWIN中有一OK按钮,EDIT 框。现在怎么获得他们的大小和位置的代码实现
包括:获得MWIN
问题点数:0、回复次数:7Top
1 楼Working20000(工作到2:00:00)回复于 2002-12-02 02:19:27 得分 0
我靠!对不起,操作失误
接上:
外加+包括的是获得MWIN 的位置和MWIN窗口的大小。
具体实现或解决方法都ok! 分好像给少了,不知道如何加了呀。问题解决了,哪位仁兄给个E_mail , 给您“邮”过去 :) :)Top
2 楼ukyoking(累)回复于 2002-12-02 04:46:54 得分 0
调用GetWindowRect()可以获得窗口尺寸,GetClientRect()可以获得客户区尺寸
Top
3 楼Working20000(工作到2:00:00)回复于 2002-12-02 09:38:33 得分 0
TO :ukyoking(乐易)
先谢上了!分等会定送上! ‘我’的位置问题呢?Top
4 楼free_card(痛并快乐着)回复于 2002-12-02 10:01:30 得分 0
以下代码,使窗口居中显示,当然也可以用CenterWindow()
long leftPos,topPos,cx,cy;
HWND dt;
CRect rect,rect1;
dt = ::GetDesktopWindow();
::GetWindowRect(dt,&rect);
GetClientRect(&rect1);
leftPos = (rect.Width()-rect1.Width())/2;
topPos = (rect.Height()-rect1.Height())/2;
cx = rect1.Width();
cy = rect1.Height();
::SetWindowPos(m_hWnd,HWND_TOPMOST,leftPos,topPos,cx,cy,SWP_SHOWWINDOW);Top
5 楼free_card(痛并快乐着)回复于 2002-12-02 10:05:32 得分 0
要用到屏幕坐标转换Top
6 楼ukyoking(累)回复于 2002-12-03 01:24:34 得分 0
呵呵,使用
CRect rc;
GetWindowRect(&rc);
ClientToScreen(&rc);
则(rc.left,rc.top)为其左上角相对于屏幕顶点,这不就是位置么,你要什么位置:)Top
7 楼dxhdxh2k(dxhdxh)回复于 2002-12-03 09:00:41 得分 0
upTop




