MFC中 的OnSize被调用的问题 [问题点数:40分,结帖人kxywn]

Bbs1
本版专家分:14
结帖率 100%
Bbs1
本版专家分:10
Bbs1
本版专家分:46
Bbs12
本版专家分:361009
版主
Blank
名人 2013年 荣获名人称号
Blank
探花 2011年 总版技术专家分年内排行榜第三
2010年 总版技术专家分年内排行榜第三
Blank
进士 2012年 总版技术专家分年内排行榜第五
Blank
金牌 2012年1月 总版技术专家分月排行榜第一
Bbs10
本版专家分:137321
Blank
进士 2018年总版新获得的技术专家分排名前十
Blank
银牌 2019年7月 总版技术专家分月排行榜第二
2019年5月 总版技术专家分月排行榜第二
Blank
铜牌 2019年4月 总版技术专家分月排行榜第三
2019年3月 总版技术专家分月排行榜第三
Blank
红花 2019年7月 VC/MFC大版内专家分月排行榜第一
2019年6月 VC/MFC大版内专家分月排行榜第一
2019年5月 VC/MFC大版内专家分月排行榜第一
2019年4月 VC/MFC大版内专家分月排行榜第一
2019年3月 VC/MFC大版内专家分月排行榜第一
2019年1月 VC/MFC大版内专家分月排行榜第一
2018年12月 VC/MFC大版内专家分月排行榜第一
2018年11月 VC/MFC大版内专家分月排行榜第一
2018年10月 VC/MFC大版内专家分月排行榜第一
2018年9月 VC/MFC大版内专家分月排行榜第一
2018年8月 VC/MFC大版内专家分月排行榜第一
2018年5月 VC/MFC大版内专家分月排行榜第一
2018年4月 VC/MFC大版内专家分月排行榜第一
2018年3月 VC/MFC大版内专家分月排行榜第一
2018年2月 VC/MFC大版内专家分月排行榜第一
2018年1月 VC/MFC大版内专家分月排行榜第一
2017年12月 VC/MFC大版内专家分月排行榜第一
2017年11月 VC/MFC大版内专家分月排行榜第一
2017年7月 VC/MFC大版内专家分月排行榜第一
2012年7月 VC/MFC大版内专家分月排行榜第一
Bbs6
本版专家分:7658
Bbs3
本版专家分:971
Bbs2
本版专家分:398
Bbs3
本版专家分:728
MFC中OnInitDialog与OnSize函数谁先调用
BOOL CMatchingDlg::OnInitDialog() {     AfxMessageBox(“haha OnInitDialog”); CDialog::OnInitDialog(); } void CMatchingDlg::OnSize(UINT nType, int cx, int cy) {   AfxMessageBox(“hah...
MFC窗体消息之尺寸被改变 OnSize()
在窗口的大小更改后,框架<em>调用</em>该成员函数。 afx_msg void OnSize(    UINT nType,     int cx,     int cy  ); 参数nType 指定请求的调整大小的类型。  此参数可以是下列值之一:     SIZE_MAXIMIZED 窗口最大化。     SIZE_MINIMIZED 窗口最小化。    SIZE_RESTOR
在MFC SDI程序中,OnSize()问题
[color=#FF0000]描述:rn我创建了一个MFC SDI程序,用CSplitterWnd分割成了左右两部分,我在左边部分的CLeftView上面创建了一个CTabCtrl,父窗口是CLeftView,CTabCtrl铺满CLeftView窗口,但是当我放大/缩小这个SDI程序的时候,可以看到CLeftView是在同步放大/缩小的,但是我的CTabCtrl的大小没有变化,请问,如何操作,可以使SDI程序窗口放大和缩小的时候,左边视图CLeftView中的CTabCtrl也跟着放大缩小?[/color]
MFC重写OnSize()之后控件丢失
我重写了窗口的OnSize()消息,想要控件的布局随着窗口的大小变化,但是点击最大化,最小化的侍候,窗口中的控件就丢失了,请各位高人指点迷津。 具体重写代码给出如下:void CMyEverythin
对话框的OnSize()和OnWindowPosChanged()的理解
最近的项目是一个对话框的项目,之前没有做过这种项目,
MFC 的onsize函数不响应
在做一个简易total commander的时候,建立了两个FormView各占一边,分别在这两个视图类上放置了ListCtrl空间,然后用OnSize函数调整控件的显示,使控件可以占满视图,这是两个
MFC窗口变化消息( OnSize、OnSizing和OnGetMinMaxInfo)
最近用到窗口变化的一些东西,遇到几个相关的消息函数,简要分析,作为备忘。 3个消息分别是:WM_SIZE、WM_SIZING、WM_GETMINMAXINFO;分别对应相应的处理函数:OnSize、OnSizing、OnGetMinMaxInfo。 当窗口大小发生变化时,响应的顺序依次是:WM_GETMINMAXINFOWM_SIZINGWM_SIZE。
窗口重绘,调用OnSize问题!!!
本人写了一个SDI的程序,是基于formview的。在form上面有很多的控件,比如说Button, Edit, List等。当我点击最大化按钮的时候,form上面的控件都靠近做上方了。rn 有人告诉我说,我需要为视图类添加OnSize()函数,并<em>调用</em>SetWindowPos()函数。本人比较菜,不清楚如何实现???rn 希望各位高手,能告诉我,如何实现在窗口发生变化的时候,里面的控件也能响应的变化!!!rn 最好能写出带嘛!!!
opengl中OnSize的问题
我在OnDraw中画了两个图,窗口改变后只留下一个矩形,代码如下:rnrn glTranslatef(0.0,0.0,-30.0);rn glPushMatrix();rn glBegin(GL_POLYGON);rn glNormal3f(0.0,0.0,1.0);rn glVertex3f(-5.0,0.0,0.0);rn glVertex3f( 5.0,0.0,0.0);rn glVertex3f( 5.0,5.0,0.0);rn glVertex3f(-5.0,5.0,0.0);rn glEnd();rn glTranslatef(0.0,-8.0,0.0);rn auxSolidSphere(1.0);rn glPopMatrix();rn请各位大虾指点一下,谢谢rn
在MFC中OnSize可以自动调用OnPaint,机理是什么?
在OnSize中即使没有对OnPaint的<em>调用</em>,WM_PAINT也被发送。rn是MFC设定成这个样,还是SDK的原因?
cmainwnd::onsize中为什么要调用cwnd::onsize?
cmainwnd::<em>onsize</em>中为什么要<em>调用</em>cwnd::<em>onsize</em>?rnrn这是在看scroll这个知识点的时候书中的一段代码,cmainwnd是cappwnd的派生类。
MFC 控件大小随窗体改变而改变大小
一个基于对话框的MFC界面,怎么样才能让对话框里的控件能和对话框同比例变小变大?今天我一直想解决这个<em>问题</em>,这是师姐留给我的任务。经过在网上的大量搜素,终于找到了解决方法,其实比较简单。    一般情况下,我们新建的对话框,里面的“确定”和:取消”按钮,在对话框最大化得时候,不会一起变大的,而是保持原来的大小。    最简单的情况:      当我们点击最大化按钮的时候,对话框会最大化
MFC 控件大小随窗体改变而改变大小-OnSize
转载:https://blog.csdn.net/zhoxier/article/details/7776128 一个基于对话框的MFC界面,怎么样才能让对话框里的控件能和对话框同比例变小变大?今天我一直想解决这个<em>问题</em>,这是师姐留给我的任务。经过在网上的大量搜素,终于找到了解决方法,其实比较简单。 &amp;nbsp;&amp;nbsp; 一般情况下...
MFC 窗口自动填充 消息Onsize()
void CRightView::OnSize(UINT nType, int cx, int cy) { CFormView::OnSize(nType, cx, cy); // TODO: 在此处添加消息处理程序代码 CSize sizeTotal; sizeTotal.cx = cx; sizeTotal.cy = cy; SetScrollSizes(MM_TEXT, siz
关于MFC对话框应用程序中,ONSIZE一问
刚才在大家的指导下,我在MESSAGE里,找到WM_PAINT,然后EDIT CODE,在ONPAINT里面加了自己的redraw()函数,解决了在bitmap上重绘的<em>问题</em>,但当我想用同样的方法找ONSIZE,发现与预想的不同rn下面是我用EDIT CODE在主程序里定位到的,请问到底如何对每个对象<em>onsize</em>?rnrnCTestDlg::CTestDlg(CWnd* pParent /*=NULL*/)rn : CDialog(CTestDlg::IDD, pParent)rnrn //AFX_DATA_INIT(CTestDlg)rn m_strRXData = _T("");rn m_strTXData = _T("");rn m_show = _T("");rn m_rightdata = _T("");rn //AFX_DATA_INITrn // Note that LoadIcon does not require a subsequent DestroyIcon in Win32rn m_hIcon = AfxGetApp()->LoadIcon(IDR_MAINFRAME);rnrnPS.程序有6,7个编辑框,按钮,图片等
一个有关MFC的OnSize和MoveWindow结合的问题
是不是<em>调用</em>OnSize,MFC系统就会<em>调用</em>MoveWindow函数,而不需要再另外<em>调用</em>了呢?
OnSize问题
我 要让group box 里的控件随窗口的变化而变化rn如何实现?rn
MFC自绘窗口的时候,OnSize
void CDialogEx::OnSize(UINT nType, int cx, int cy) { CDialog::OnSize(nType, cx, cy); //计算偏移 INT nYPos=1; INT nXPos=cx-nCloseWidth; //设置位置 m_rcButton[BST_CLOSE].SetRect(nXPos,
Onsize问题
切分窗口后用<em>onsize</em>控制比例 可出现<em>问题</em> 不知道怎么回事rnrnrnMFCSDI.exe 中的 0x782b8375 (<em>mfc</em>80d.dll) 处未处理的异常: 0xC0000005: 写入位置 0x00000004 时发生访问冲突 rnrnrn在线等呀 rnrnrnrnBOOL CMainFrame::OnCreateClient(LPCREATESTRUCT lpcs, CCreateContext* pContext)rnrn // TODO: 在此添加专用代码和/或<em>调用</em>基类rn CRect rect;rn GetClientRect(&rect);rnm_wndSplitter.CreateStatic(this, 2, 2 ); rnm_wndSplitter.CreateView(0, 0, RUNTIME_CLASS(CshowView1), CSize(rect.Width()/2,rect.Height()/2), pContext);rnm_wndSplitter.CreateView(0, 1, RUNTIME_CLASS(CshowView2), CSize(rect.Width()/2,rect.Height()/2), pContext);rnm_wndSplitter.CreateView(1, 0, RUNTIME_CLASS(CMshowView3), CSize(rect.Width()/2,rect.Height()/2), pContext);rnm_wndSplitter.CreateView(1, 1, RUNTIME_CLASS(CshowView4), CSize(rect.Width()/2,rect.Height()/2), pContext);rnm_bSplitterCreated=TRUE;rn return TRUE;rn rnrnrnvoid CMainFrame::OnSize(UINT nType, int cx, int cy)rnrn CFrameWnd::OnSize(nType, cx, cy);rnrnrn CRect rect1;rnrn GetClientRect(&rect1);rnrn if (m_bSplitterCreated)rnrn rn m_wndSplitter.SetRowInfo(0,rect1.Height()/2,10);(出错)rn m_wndSplitter.SetRowInfo(1,rect1.Height()/2,0);rn rnrn m_wndSplitter.SetColumnInfo(0,rect1.Width()/2,0);rn m_wndSplitter.SetColumnInfo(1,rect1.Width()/2,0);rnrn rnrn rnrn rn m_wndSplitter.RecalcLayout();rnrn
MFC中CalcWindowRect ()与OnSize()的有什么区别?
在MFC界面编程中,均用于界面缩放时界面处理函数CalcWindowRect ()与OnSize()有什么区别?
MFC如何在其他类中让CView中的OnSize函数执行
RT 现在我在另一个类中添加这个语句PostMessage(pMain->m_hWnd,WM_SIZE,0,0);但是CView中的OnSize函数执行不会执行,不知道怎么做?
MFC改变控件位置和大小
最近经常要用到改变控件在对话框上的位置和大小,一直找不到有效的方法,查看了很多资料。这篇博文还算靠谱,转载到这里了。 void CmyqeDlg::OnSize(UINT nType, int cx, int cy) { CDialog::OnSize(nType, cx, cy); if(nType!=SIZE_MINIMIZED) { if (me) // 判断是否为空,因为
编辑框控件随窗口大小变化重写OnSize()
最近在学<em>mfc</em>, 模仿一个记事本。文本内容用编辑框来显示。 当窗口变化时,通过以下代码,可以实现编辑框随窗口一起变化。 需要注意的是在使用编辑框指针前,一定要加上判断。因为第一次OnSize() 被<em>调用</em>时,编辑框对象还没有生成,只有窗口对象。 void CNotePadDlg::OnSize(UINT nType, int cx, int cy)  { CDialog::OnSize(
无标题对话框OnSize中调用ClientToScreen无效
新建工程,对话框的属性border设置成none,让后在<em>onsize</em>中使用如下代码rn[code=C/C++]rn CRect rect;rn GetClientRect(rect);rn ClientToScreen(rect);rn ScreenToClient(rect);rn[/code]rnClientToScreen竟然没有转换,这是为啥呀,窗体不断最大化,然后恢复几次又可以了。费解rn各位老大帮帮忙
在OnMove 或 OnSize中调用 GetDlgItem();
在WM_MOVE 或 WM_SIZE的消息处理函数中 想获得一个子控件的位置;rnrnCRect rect;rnrnGetDlgItem(IDC_BUTTON1)->GetWindowRect(&rect);rnrn为什么会出现错误?
请教:OnSize()中调用MoveWindow()出错、??
rn响应对话框的WM_SIZE消息,来动态改变对话框上控件的位置何大小。rnrn代码如下:rnvoid CMy111Dlg::OnSize(UINT nType, int cx, int cy) rnrn CDialog::OnSize(nType, cx, cy);rn rn // TODO: Add your message handler code herern switch (nType)rn rn case SIZE_MAXIMIZED:rn m_tree.MoveWindow(0,0,cx*3.0/8,cy);rn m_list.MoveWindow(cx*3.0/8,0,cx*5.0/8,cy*5.0/8);rn m_edit.MoveWindow(cx*3.0/8,cy*5.0/8,cx*5.0/8,cy*3.0/8);rn break;rn /* case SIZE_RESTORED:rn * m_tree.MoveWindow(0,0,cx*3.0/8,cy);rn * break;rn */rn default:rn break;rn rnrn其中/***/注释掉程序可以正常运行,就是只能响应窗口最大化的消息,可是怎么响应rn窗口的大小任意改变呢??rnrn如果把/***/部分注释掉,run出错为:rnrnvoid CWnd::MoveWindow(int x, int y, int nWidth, int nHeight, BOOL bRepaint)rnrn ASSERT(::IsWindow(m_hWnd));//////ASSERT出错??????????rnrn if (m_pCtrlSite == NULL)rn ::MoveWindow(m_hWnd, x, y, nWidth, nHeight, bRepaint);rn elsern m_pCtrlSite->MoveWindow(x, y, nWidth, nHeight, bRepaint);rnrnrnrn请高手指教,聆听ing!rn
OnSize
请问在VC中OnSize消息响应函数中我用GetDlgItem(IDC_BUTTON1)->GetWindowRect(&rect);怎么运行不起来rn一运行就出错 能不能介绍几个类可以方便的移动控件和改变编辑框的大小
有关于MFC中OnSize函数用到控件变量的问题
我用MFC编辑了一个界面,其中在一个静态控件的CRect上显示一个子对话框,现在有个<em>问题</em>,我设置可以改变对话框大小,在改变对话框大小的时候,同时改变控件的大小并改变子对话框的大小,现在有个<em>问题</em>,就是改变子对话框大小时在OnSize函数是要提取静态控件的CRect时弹出一个Debug错误,中断后在静态控件的变量m_show.GetWindowRect()这句出现,ASSERT这个GetWindowRect,我想问问这个地方应该怎么处理。
函数onsize()与onsizing()区别
OnSize是控件大小发生变化后发给你的消息,你可以得到控件将要变成多大(cx和cy指定),OnSizing是正在改变的大小,例如用户点击着鼠标拖放一个控件的大小,这个时候就收到OnSizing了
VC中使用OnSize函数,设置控件位置的注意事项
VC在OnSize函数中可以根据当前窗口的大小,来改写窗口里面子控件的位置、大小。 但是注意,OnSize在窗口启动过程中,会多次被<em>调用</em>,所以,不能简单的在该函数中<em>调用</em>GetDlgItem()获取子控件的窗口指针。 最简单的方式,设置一个全局变量,初始化时设置为FALSE,在OnInitialUpdate()或者OnInitDialog()后将其设置为TRUE,在OnSize函数里使用GetD
MFC控件大小随窗体大小而改变
一。大小和位置都改变 1.首先为窗体类添加CRect m_rect,该成员变量用来记录窗体的当前大小。 2.在类向导里面(Ctrl+W),为窗体添加消息WM_SIZE的响应函数OnSize(); 注意if(nType==1) return;这一句必须添加,否则最小化恢复的时候会出错。 void CPaperManagementDlg::OnSize(UINT nType, int cx
OnSize()
在窗口的大小更改后,框架<em>调用</em>该成员函数 afx_msg void OnSize( UINT nType, int cx, int cy ); 参数nType 指定请求的调整大小的类型。 此参数可以是下列值之一: SIZE_MAXIMIZED 窗口最大化。 SIZE_MINIMIZED 窗口最小化。 SIZE_RESTORED 窗口已调整大小,但是,SIZE_MINIMIZED 和 SIZE_MAX...
OnSize()与OnPaint()的问题
<em>问题</em>背景: 我把对话框设置成了可以放大和缩小,放大和缩小的同时缩放我绘制的图形。 我发现一个<em>问题</em>,如果我扩大对话框的话系统就可以<em>调用</em>OnPaint(),如果我缩小对话框的话系统就不会<em>调用</em>OnPaint
onsize后两次调用onpaint
创建的时候是这样的:rnm_wnd.Create(NULL,NULL,WS_CHILD,l_rc,this,10000);rn调整窗口大小后,跟踪发现先<em>调用</em><em>onsize</em>(即便我的<em>onsize</em>函数只是__super::OnSize(nType,cx,cy),之后两次<em>调用</em>onpaint!这样有时响应就显得稍慢点了。不知道大家有没有碰到这个<em>问题</em>?怎么解决的?是窗口风格的<em>问题</em>吗?
调用onsize ,感觉闪眼?
大家有没有觉得在<em>onsize</em>()中<em>调用</em>SetWindowPos或者MoveWindow来实现对话框大小改变,控件得大小响应变化时,发现改变对话框大小时控件闪得很厉害,指的是那种很晃眼的感觉?
SetWondowPos会引起OnSize()的调用吗?
SetWondowPos会引起OnSize()的<em>调用</em>吗?我想使对话框的某个控件最大化,在响应OnSize()的函数里面<em>调用</em>了SetWondowPos函数,但是却一直循环<em>调用</em>这个函数,我怀疑是这个函数引起了OnSIze(),是这样的吗?
mfc 在窗口初始化的时候要调用几次onsize啊?
最近在搞一个<em>mfc</em>的东东,遇到个<em>问题</em>,在窗口初始化的时候要<em>调用</em>几次<em>onsize</em>啊?rn哪位大仙圣人帮个忙啊,查了半天也没查出来,要疯了,要疯了
MFC 中调用telnet问题
[size=13px]我想要做的是在cmd窗口中输入 telnet 127.0.0.1 6002 完成连接,然后接收获取数据,存到文件中。rn现在能打开cmd,但是输入命令telnet提示【"telnet' 不是内部或外部命令,也不是可运行的程序或批处理文件。】rn上面的<em>问题</em>我查到在64位下应该用telnet.exe这个地址C://Windows//sysnative//telnet.exe,但是我不知道怎么改rnrn重写一个telnet的话是不是简单一点?有开发经验的人给点建议。rnrn用的谁匿名管道和CreateProcess()函数[/size]rn代码粘贴如下rn[code=c]void CTestTelnetDlg::OnBnClickedButton3()rnrn SECURITY_ATTRIBUTES sa; rn HANDLE hRead,hWrite; rn sa.nLength = sizeof(SECURITY_ATTRIBUTES); rn sa.lpSecurityDescriptor = NULL; rn sa.bInheritHandle = TRUE; rn if (!CreatePipe(&hRead,&hWrite,&sa,0)) rn MessageBox(_T("Error On CreatePipe()")); rn return; rn rn STARTUPINFO si; rn PROCESS_INFORMATION pi; rn si.cb = sizeof(STARTUPINFO); rn GetStartupInfo(&si); rn si.hStdError = hWrite; rn si.hStdOutput = hWrite; rn //si.wShowWindow = SW_HIDE;rn si.wShowWindow = TRUE;rn // TCHAR cmdline[] =TEXT("c://program files//internet explorer//iexplore.exe http://community.csdn.net/"); rn // TCHAR cmdline[] =TEXT("C://Windows//System32//cmd.exe /c pythn"); rn // TCHAR cmdline[] =TEXT("C://Windows//sysnative//telnet.exe");rn TCHAR cmdline[] =TEXT("c:\\Windows\\System32\\cmd.exe /c telnet 127.0.0.1 6002"); rnrn rn rnrn si.dwFlags = STARTF_USESHOWWINDOW | STARTF_USESTDHANDLES; rn if (!CreateProcess(NULL,cmdlinern ,NULL,NULL,TRUE,NULL,NULL,NULL,&si,&pi)) rn MessageBox(_T("Error on CreateProcess()")); rn return; rn rn //Sleep(20000);rn CloseHandle(hWrite); rn char buffer[4096] = 0; rn DWORD bytesRead; rn while (true) rn if (ReadFile(hRead,buffer,4095,&bytesRead,NULL) == NULL) rn break; rn m_Edit1 += buffer; rn UpdateData(false); rn Sleep(200); rn rn[/code]
为什么我的OnSize函数执行了三次?请教一下
BOOL CMainFrame::OnCreateClient(LPCREATESTRUCT lpcs, CCreateContext* pContext) { // TODO: Add your
OnSize (UINT nFlags, int cx, int cy)事件的 cx 与 cy 中保存的是改变前的范围还是改变后的范围啊?
OnSize (UINT nFlags, int cx, int cy)事件的 cx 与 cy 中保存的是Window改变大小前的范围还是改变后的范围啊?我在 OnSize 事件中处理 SCROLL,
MFC关于获取子窗口CWnd
-
窗口变化相关消息 OnSize、OnSizing和OnGetMinMaxInfo
最近用到窗口变化的一些东西,遇到几个相关的消息函数,简要分析,作为备忘。 3个消息分别是:WM_SIZE、WM_SIZING、WM_GETMINMAXINFO;分别对应相应的处理函数:OnSize、OnSizing、OnGetMinMaxInfo。 当窗口大小发生变化时,响应的顺序依次是:WM_GETMINMAXINFOWM_SIZINGWM_SIZE。   OnGetMi
MFC中调用dll问题
我手上现有一个用VS.NET2005 C#写的一个类(dll),能不能在MFC里面<em>调用</em>到里面类的方法?该怎么调?求高人指点
MFC中调用bat的问题
哪位大侠指教一下:rn我现在做一个MFC,step by step模式的,有多个对话框,在后面的对话框中有bat文件<em>调用</em>,现在<em>问题</em>是在没有执行到后面<em>调用</em>bat文件的对话框时直接关闭当前对话框,结束程序时会有bat文件的命令行黑框显示一下,怎么不显示这些黑框呢???rn
MFC中调用D3D问题
如题,怎样在MFC的对话框窗体中嵌套D3D窗口(不是<em>调用</em>一个新窗口,而是在原有的窗体上添加一个类似于控件的用于显示D3D)rn另外,DX的X文件是在什么地方编辑的?里面的模型一般是用什么做的?
mfc调用sdk的问题
当前我只有一个dll,请问我要怎么加载并<em>调用</em>它?我用loadlibray(“a.dll");可以加载成功,但是a中有一个getit()函数,我要怎么<em>调用</em>呢?求指点,谢谢
关于void CMainFrame::OnSize(UINT nType, int cx, int cy) 的使用?
对这条语句不是很明白,请懂得的大侠给介绍一下。。。 void CMainFrame::OnSize(UINT nType, int cx, int cy) { CFrameWnd::OnSize(nT
诡异的MoveWindow!!!OnSize()无响应
现象是这样: 当主对话框的大小发生改变时,我在OnSize()里对子控件进行了重新排列。 <em>调用</em> m_pChild->MoveWindow(&rcChild, TRUE); 调整子控件大小。 诡异的是:
MFC窗口怎么显示halcon采集到的图片
-
一个CWnd对象的onpaint函数中,动态Create两个子窗口时造成wincore.cpp中的断言错误。
-
OnSize中的MoveWindow出错
我是在MainFrm中加入了一个TabCtrl,然后在TabCtrl中添加一项RoomFrame:CFrameWnd,在RoomFrame中静态切分窗口,在其中一个子View中又加入了一个TabCtrl,再在TabCtrl中添加一项ChatDlg:CDialog,在MainFrm的OnSize中添加了如下代码(这段代码单独运行没有<em>问题</em>)rnrnRECT rect;rnmemset(&rect,0,sizeof(rect));rnthis->GetClientRect(&rect);rnrect.top = 50;rnm_pTabCtrl->MoveWindow(&rect,TRUE); //移动MainFrm中的TabCtrl rnrnm_pTabCtrl->GetClientRect(&rect);rnrect.bottom = rect.bottom-21;rnm_pRoomFrame->MoveWindow(&rect,TRUE);//移动MainFrm中TabCtrl的RoomFrame项rnrn在RoomFrame中的子View的OnSize中添加如下代码rnrnRECT rect;rnmemset(&rect,0,sizeof(rect));rnthis->GetClientRect(&rect);rnm_pTabChat->MoveWindow(&rect,TRUE); //移动子View中TabCtrlrnrect.bottom-=21;rnrn//只加以上5行,运行正常,但继续加入下边的1行代码时就报错(A(终止),R(重试),Ignore(忽略))rnm_pChatDlg->MoveWindow(&rect,TRUE); //移动子View中TabCtrl的ChatDlg项rnrn如果我机子开的话,可以参看一下界面视图http://59.64.197.221/ROOM.JPGrn我不加错误那句,我定义的ChatDlg无法看见,加的话就出错,但不知道错在何处,请高人指教
关于对话框的OnSize的问题
对话框为WS_POPUP的,Border为Resizingrnrn有最大化按钮,窗口在创建的时候是先发WM_INITDIALOG消息还是先发WM_SIZE消息啊?rn我在窗口中有个Group Box控件,想使他随窗口大小的改变而改变自己的大小来适应窗口。在窗口类中定义了一个CRect m_rectDlgClient;并在OnInitDialog()中rnGetClientRect(&m_rectDlgClient);rnrn然后在OnSize函数中加入rnvoid CXXXDlg::OnSize(UINT nType, int cx, int cy) rnrnrn CDialog::OnSize(nType, cx, cy);rn CRect rect;rn if ((m_rectDlgClient.Width() != 0) && (m_rectDlgClient.Height() != 0) && (nType != SIZE_MINIMIZED))rn rn GetDlgItem(IDC_GROUPBOX)->GetWindowRect(&rect);rn ScreenToClient(&rect);rn rect.SetRect(rect.left,rect.top,rect.right+cx-m_rectDlgClient.Width(),rect.bottom);rn GetDlgItem(IDC_GROUPBOX)->MoveWindow(&rect);rn rn rn if (nType != SIZE_MINIMIZED) rn rn GetClientRect(&m_rectDlgClient);rn rnrn为什么我在Debug模式下面运行就是正常的,而在Release模式下运行的时候说rn内存不能读啊?在这一句GetDlgItem(IDC_GROUPBOX)->GetWindowRect(&rect);rn的时候出错。。。rn而把窗口风格改成Overlapped就可以正常运行,Popup的对话框和Overlapped的对话框有什么区别吗?rnrn我在Release下在OnInitDialog和OnSize函数中设置断点时,程序是先在OnSize中先断的,请问大家是怎么回事啊?rnrn能不能给一个关于对话框的OnSize处理的例程,谢谢大家了
一个在OnSize里的问题
在框架类的OnSize()函数中设定了分割视图的相对大小比例。拖动窗口的时候各视图可以随窗口等比例的放大或缩小。但是在按下最大化、还原按钮后却不可以实现按照等比例的改变。rnrn在OnSize()函数中加入了RecalcLayout()后就解决了这个<em>问题</em>。rnrn我想问:为什么拖动的时候不加RecalcLayout()没事,而最大化的时候不加RecalcLayout()就不能正常的显示呢?
OnSize()消息问题
void CMainWindow::OnSize(UINT nType, int cx, int cy)rnrn CFrameWnd::OnSize(nType,cx,cy);rn.....................rnrnrn为什么OnSize()里面又嵌套个OnSize() 这代表什么意思?rnrnCMainWindow是派生一CFrandWnd类的
求助:OnSize的使用问题
最近有个项目,需要实现两个界面的切换,两个界面的大小不同,我使用了OnSize的处理方式,代码如下:rnvoid CMainFrame::OnSize(UINT nType, int cx, int cy) rnrn CPicApp *pFjApp = (CPicApp*)AfxGetApp();rn int SysScreenX = GetSystemMetrics(SM_CXSCREEN);rn int SysScreenY = GetSystemMetrics(SM_CYSCREEN); //屏幕的像素rn if(pFjApp->ScadaMode==1) //如果等于1,改变窗口rn rn MoveWindow(0,84, SysScreenX,SysScreenY-84); //显示方式1rn rn else //否则全屏显示rn rn MoveWindow(0,0,SysScreenX,SysScreenY); //显示方式2,即全屏显示rn rnrn在处理的过程中,如果初始化为全屏显示,再切换到方式1时,没有任何<em>问题</em>,但如果初始化为显示方式1,rn再切换到方式2(即全屏)时,不能全屏显示,只是把方式1的屏幕向上移动了,下面空出一片空白。rn我也单步跟踪了,像素的获取没有发生变化,感觉这时处理时,MoveWindow不能改变窗口大小,只能改变rn位置,就算我把SysScreenY改的很大,也无济于事。rn请各位高手给个解决方法,谢谢了!
mfc子窗体OnSize后,最小化还原,控件全没了
一个程序中,创建了一个非模态对话框,为了更加方便,我设置了这个对话框能自由调整窗口大小,控件随之而变大 void Cdialogservice::OnSize(UINT nType, int cx,
OnSize(UINT nType, int cx, int cy)
这样得到的cx,cy是不是屏幕的宽度和高度?和GetSystemMetrics又有什么区别呢?我想设计一个任何像素的屏幕都能正常显示的界面,该用哪个函数?
Onsize()时如何解决闪烁现象?我已经使用了双缓冲,在滑块移动时没出现闪烁,但是窗口大小改变时,却闪烁了
如何解决这个<em>问题</em>?大家发言
如何调用ONSIZE??????
我想在代码中执行<em>onsize</em>()中的代码,但是不知道如何调!<em>onsize</em>有三个参数.我不想调整窗口的大小.求助!
OnSize的奇怪问题
在多文档中我在CChildFrame的一个函数中用rnLONG l = MAKELONG(5 , 10) ;rnPostMessage(WM_SIZE , SIZE_RESTORED , l) ;rn但是发现子窗口并没有改变,而我在CChildFrame::OnSize()中rn得到的值确实是5和6,位什么呢?我改成SendMessage()或是直接<em>调用</em>rnCChildFrame::OnSize(SIZE_RESTORED , 5 , 10)都没有用。
有关OnSize的问题??
为什么我的窗口在进行OnSize的时候,窗口不会随着变化,只有当鼠标左键最后弹起时,才显示出最后改变的结果??到底可能是什么原因呢?rnrn我的窗口是个Wnd,不是Dlg,窗口的属性为 rn cs.style = WS_POPUPWINDOW|WS_SIZEBOX;rn cs.dwExStyle = WS_EX_NOACTIVATE;rnrn老大们,帮帮忙吧~~~
函数onSize()的问题
各位高手:rn 我碰见一个<em>问题</em>:我不知道控件的onSize()是什么时候系统<em>调用</em>的:是控件在创建完成而没有显示的时候吗?rn 还有我想对控件的字体进行设置.所以使用了WM_SETFONT消息,但我在onSetFont()函数里设置了新的字体之后,控件的字体并没有变,为什么呢?
重写OnSize()问题
void CDBDialogView::OnSize(UINT nType, int cx, int cy)rnrn CFormView::OnSize(nType,cx,cy);rn CRect rect;rn this->GetClientRect(&rect);rn m_tree1.SetWindowPos(&m_tree1,rect.left,rect.top,rect.Width(),rect.Height(),SWP_NOMOVE|SWP_NOSIZE|SWP_NOACTIVATE);rn return;rnrnrnCDBDialogView为CFormView派生,m_tree1是CDBDialogView的tree控件。rn调整窗口大小时tree控件怎么大小不变呢?rnrn
在vue中监听windows.onsize自适应屏幕
http://blog.csdn.net/efficiency9/article/details/72857579
消息OnSize的用法
面板的控件随面板的大小,位置大小也可以变化。afx_msg void OnSize(UINT nType, int cx, int cy);void CstatusBar_MenuView::OnSize(UINT nType, int cx, int cy) {            CFormView::OnSize(nType, cx, cy);           if
点击窗口最大化调用onsize问题
用vs2010创建一个对话框,创建时代最大化、最小化按钮,但点击最大化,最小化时没有掉用WM_SIZE函数数,这是为什么,不解
我想要在OnSize消息处理函数中,重新计算cx和cy的值,让我的窗口和新的cx,cy值一样大?
我想要在OnSize消息处理函数中,重新计算cx和cy的值,让我的窗口和新的cx,cy值一样大? 也就是说,假设窗口原来cx,cy大小是100,100,(在OnSize中得到) 我想在OnSize中设
为什么在重写的onsize函数里面都会首先调用基类的CDialog::Onsize
为什么在重写的<em>onsize</em>函数里面都会首先<em>调用</em>基类的CDialog::Onsize,而且我看有的重写<em>onsize</em>接口中,只<em>调用</em>了CDialog::Onsize,而没有做其他操作,既然这样,为什么要重写
OnSize的时候闪烁问题
rnrn在Dialog里放了很多个Btn,Static之类的控件,然后怎么做能不让他闪烁?rnrn我在Dialog的OnPaint里用了双缓冲,然后OnEraseBk()返回TRUE,rn在Static,Btn等的DrawItem里也使用了双缓冲,然后OnEraseBk()返回TRUE。但是拉动Dialog的时候还是闪烁,是怎么回事?rn怎么解决?rnrn给个例子,或则连接,成熟的程序都可以。
CControlBar Onsize问题
CControlBar 如何设置大小呢?rnrn比如,我想让它最大拉伸到200的宽度,这样应该怎么做呢?rn谢谢。rnrn他无法响应 OnSize 和 OnSizing。
OnSize的问题!——在线等
在ListView的程序中,想把列的宽度和整个视图联系起来,ListVIew有4列,每列占客户区的1/4,可是当程序最大话后每列的宽度不变,怎么做才能使列的宽度和客户区联系起来呢,最好有范例代码!
关于OnSize函数的问题!
CFromView 对象为什么任何操作 首个参数为什么一直是0啊.rn按照MSDN 可不是这么说的.
C++创建控件并响应三部曲、设置窗口全屏、OnSize实现控件大小改变、跟踪调试顺序
一、创建控件并响应事件三步曲:添加成员变量,变量类型为所创建控件的类型,如CButton 1.手动添加 afx_msg void OnmyButton();   2.手动添加实现函数;   3.关联:MESSAGE_MAP:ON_BN_CLICKED(IDC_MYBUTTON,OnmyButton)。 二、VC设置窗口全屏显示的方法:通过设置窗口显示状态和窗口位置来使窗口全屏。 在窗
CWnd::OnSize
在窗口的大小更改后,框架<em>调用</em>该成员函数。 afx_msg void OnSize( UINT nType, int cx, int cy ); 参数 nType 指定请求的调整大小的类型。 此参数可以是下列值之一: SIZE_MAXIMIZED 窗口最大化。 SIZE_MINIMIZED 窗口最小化。
OnSize 改变控件的大小
重载 OnSize 函数   声明: afx_msg void OnSize(UINT nType,  int  cx,  int  cy); // 调整控件大小     // 调整控件大小   void CZTCServerDlg::OnSize(UINT nType, int cx, int cy)  {    CDialogEx::OnSize
MoveWindow后OnSize没被调用的原因:WM_GETMINMAXINFO限制了
void CMainFrame::OnGetMinMaxInfo(MINMAXINFO* lpMMI) { //调整最小高度与宽度,如果需要的话 lpMMI->ptMinTrackSize.x = 640; lpMMI->ptMinTrackSize.y = 480; //调整最大高度与宽度,如果需要的话 lpMMI->ptMaxTrackSize.x = 1366; lpMMI->
CFormView的OnSize问题
我有个CtestView从CFormView继承来的rn我在上面加了个ListCtrl控件rn为什么在OnSize函数中rn CListCtrl * plc=NULL;rn plc = (CListCtrl *)GetDlgItem(IDC_LIST2);rnrnplc得到的指针都是NULL呢?rnrnCListCtrl m_listctrl;定义变量也一样。
onsize函数问题
假如我现在有个SDI程序,View是Form View,想在上面放个Tab Control,包含两个Dialog。rn[code=C/C++]rnvoid CTab_testView::OnInitialUpdate()rnrn CFormView::OnInitialUpdate();rn GetParentFrame()->RecalcLayout();rn ResizeParentToFit();rn rn //为Tab Control增加两个页面rn m_tab.InsertItem(0, _T("First"));rn m_tab.InsertItem(1, _T("Second"));rn rn //创建两个对话框rn m_page1.Create(IDD_DIALOG1, &m_tab);rn m_page2.Create(IDD_DIALOG2, &m_tab);rnrnrnrn[/code]rnrnrnrn我想知道我想在CTab_testView的<em>onsize</em>中<em>调用</em>IDD_DIALOG1的 <em>onsize</em>(),应该怎么做?
onsize中调整控件位置的问题
是不是得一个一个重新计算阿,那控件多了岂不是工作量很大,有没有什么好一点的方法,还有一格就是如何取得一个控件在对话框中的位置信息阿,哪位大侠指点一下,多谢
MFC中窗口初始化时OnCreate、OnInitDialog、OnSize、OnPaint的 调用顺序
执行顺序(以箭头方向): OnCreate -&amp;gt; OnSize -&amp;gt; OnInitDialog -&amp;gt; OnPaint OnCreate:要创建一个窗口。 OnSize:用于窗口初始化前的一些参数设定。 OnInitDialog:初始化窗口,例如设置窗口字体、控件等。 OnPaint:在窗口上做一些绘制动作。...
vc++.net获取当前运行程序所在的目录下载
vc++.net获取当前运行程序所在的目录 vc++.net获取当前运行程序所在的目录,自动查找自身所在的目录路径,枚举并显示出来,虽然是个简单的小例子,不过刚接触vc.NET的朋友可能对其方方面面还是很陌生,希望通过这些超简单的小例子,对你学习VC.NET有帮助。 相关下载链接:[url=//download.csdn.net/download/mirage1982/2669782?utm_source=bbsseo]//download.csdn.net/download/mirage1982/2669782?utm_source=bbsseo[/url]
Luchenzhi增强的PAM30下载
PAMIE3.0增强版Luchenzhi修改 相关下载链接:[url=//download.csdn.net/download/pj2000pj/3191065?utm_source=bbsseo]//download.csdn.net/download/pj2000pj/3191065?utm_source=bbsseo[/url]
android播放器下载
该产品为android音乐播放器,实现本地播放,音乐播放器的有功能都有了,并可以收藏,管理你的音乐文件,并有歌词同步的功能,相当不错 相关下载链接:[url=//download.csdn.net/download/sunboyjohn690905084/4916259?utm_source=bbsseo]//download.csdn.net/download/sunboyjohn690905084/4916259?utm_source=bbsseo[/url]
我们是很有底线的