20 个解决方案
#1
用VC的对话框属性设置,不选中System Menu就可以了。。。。
点击键显示自己定义的内容,需要新建一条菜单,然后重载WM_OnContextMenu();把CPoint point设置在窗口条的范围内就可以了
点击键显示自己定义的内容,需要新建一条菜单,然后重载WM_OnContextMenu();把CPoint point设置在窗口条的范围内就可以了
#2
你搜索一下,这个问题好多人问过了,回答得很好的。我一时找不到。
#3
我刚答过
http://expert.csdn.net/Expert/topic/1236/1236784.xml?temp=.4685175
http://expert.csdn.net/Expert/topic/1236/1236784.xml?temp=.4685175
#4
up
#5
CMainFrame::OnCreate中
CMenu* pTopMenu = GetSystemMenu(FALSE);
pTopMenu -> RemoveMenu(3,MF_BYPOSITION); //
CMenu* pTopMenu = GetSystemMenu(FALSE);
pTopMenu -> RemoveMenu(3,MF_BYPOSITION); //
#6
怎么我刚试了,不行阿,还是有个小叉
#7
去掉WS_SYSMENU几格!
#8
去掉WS_SYSMENU风格!
#9
去掉WS_SYSMENU风格后可以了,但是我在点双击窗口条时,窗口还是会改变大小,我怎么能使双击窗口条没响应呢?
#10
BOOL CMainFrame::PreCreateWindow(CREATESTRUCT& cs)
{
if( !CFrameWnd::PreCreateWindow(cs) )
return FALSE;
// TODO: Modify the Window class or styles here by modifying
// the CREATESTRUCT cs
cs.style =~WS_SYSMENU;
return TRUE;
}
{
if( !CFrameWnd::PreCreateWindow(cs) )
return FALSE;
// TODO: Modify the Window class or styles here by modifying
// the CREATESTRUCT cs
cs.style =~WS_SYSMENU;
return TRUE;
}
#11
BOOL CMainFrame::PreCreateWindow(CREATESTRUCT& cs)
{
if( !CFrameWnd::PreCreateWindow(cs) )
return FALSE;
// TODO: Modify the Window class or styles here by modifying
// the CREATESTRUCT cs
cs.style &=~WS_SYSMENU;
return TRUE;
}
{
if( !CFrameWnd::PreCreateWindow(cs) )
return FALSE;
// TODO: Modify the Window class or styles here by modifying
// the CREATESTRUCT cs
cs.style &=~WS_SYSMENU;
return TRUE;
}
#12
up
#13
同意中国男人
BOOL CMainFrame::PreCreateWindow(CREATESTRUCT& cs)
{
if( !CFrameWnd::PreCreateWindow(cs) )
return FALSE;
// TODO: Modify the Window class or styles here by modifying
// the CREATESTRUCT cs
cs.style =~WS_SYSMENU;
return TRUE;
}
BOOL CMainFrame::PreCreateWindow(CREATESTRUCT& cs)
{
if( !CFrameWnd::PreCreateWindow(cs) )
return FALSE;
// TODO: Modify the Window class or styles here by modifying
// the CREATESTRUCT cs
cs.style =~WS_SYSMENU;
return TRUE;
}
#14
BOOL CMainFrame::PreCreateWindow(CREATESTRUCT& cs)
{
if( !CFrameWnd::PreCreateWindow(cs) )
return FALSE;
// TODO: Modify the Window class or styles here by modifying
// the CREATESTRUCT cs
cs.style =~WS_SYSMENU;
return TRUE;
}
{
if( !CFrameWnd::PreCreateWindow(cs) )
return FALSE;
// TODO: Modify the Window class or styles here by modifying
// the CREATESTRUCT cs
cs.style =~WS_SYSMENU;
return TRUE;
}
#15
再去掉WS_MAXIMIZEBOX和WS_THICKFRAME风格
#16
要双击没反应??那就要响应WM_NCLBUTTONDBLCLK消息
Ctrl+W打开ClassWizard,点ClassInfo->Message filter中的Windows,
然后在MessageMaps里选择CMainframe,这样就可以选WM_NCLBUTTONDBLCLK消息了
在WM_NCLBUTTONDBLCLK消息响应函数中去掉所有代码,直接加上return;
OK 了
Ctrl+W打开ClassWizard,点ClassInfo->Message filter中的Windows,
然后在MessageMaps里选择CMainframe,这样就可以选WM_NCLBUTTONDBLCLK消息了
在WM_NCLBUTTONDBLCLK消息响应函数中去掉所有代码,直接加上return;
OK 了
#17
BOOL CMainFrame::PreCreateWindow(CREATESTRUCT& cs)
{
if( !CFrameWnd::PreCreateWindow(cs) )
return FALSE;
// TODO: Modify the Window class or styles here by modifying
// the CREATESTRUCT cs
cs.style =~(WS_MAXIMIZEBOX|WS_MAXIMIZEBOX) ;
return TRUE;
}
{
if( !CFrameWnd::PreCreateWindow(cs) )
return FALSE;
// TODO: Modify the Window class or styles here by modifying
// the CREATESTRUCT cs
cs.style =~(WS_MAXIMIZEBOX|WS_MAXIMIZEBOX) ;
return TRUE;
}
#18
各位高手回答得真精彩,等下一定给分
还有个问题:
显示位图得时候,怎样把一张图显示在整个Cview窗口所在得区域?
还有个问题:
显示位图得时候,怎样把一张图显示在整个Cview窗口所在得区域?
#19
BITBlT函数!或者用StretchBlt具体看MSDN
#20
可用PatBlt,或者用一个循环来BitBlt
#1
用VC的对话框属性设置,不选中System Menu就可以了。。。。
点击键显示自己定义的内容,需要新建一条菜单,然后重载WM_OnContextMenu();把CPoint point设置在窗口条的范围内就可以了
点击键显示自己定义的内容,需要新建一条菜单,然后重载WM_OnContextMenu();把CPoint point设置在窗口条的范围内就可以了
#2
你搜索一下,这个问题好多人问过了,回答得很好的。我一时找不到。
#3
我刚答过
http://expert.csdn.net/Expert/topic/1236/1236784.xml?temp=.4685175
http://expert.csdn.net/Expert/topic/1236/1236784.xml?temp=.4685175
#4
up
#5
CMainFrame::OnCreate中
CMenu* pTopMenu = GetSystemMenu(FALSE);
pTopMenu -> RemoveMenu(3,MF_BYPOSITION); //
CMenu* pTopMenu = GetSystemMenu(FALSE);
pTopMenu -> RemoveMenu(3,MF_BYPOSITION); //
#6
怎么我刚试了,不行阿,还是有个小叉
#7
去掉WS_SYSMENU几格!
#8
去掉WS_SYSMENU风格!
#9
去掉WS_SYSMENU风格后可以了,但是我在点双击窗口条时,窗口还是会改变大小,我怎么能使双击窗口条没响应呢?
#10
BOOL CMainFrame::PreCreateWindow(CREATESTRUCT& cs)
{
if( !CFrameWnd::PreCreateWindow(cs) )
return FALSE;
// TODO: Modify the Window class or styles here by modifying
// the CREATESTRUCT cs
cs.style =~WS_SYSMENU;
return TRUE;
}
{
if( !CFrameWnd::PreCreateWindow(cs) )
return FALSE;
// TODO: Modify the Window class or styles here by modifying
// the CREATESTRUCT cs
cs.style =~WS_SYSMENU;
return TRUE;
}
#11
BOOL CMainFrame::PreCreateWindow(CREATESTRUCT& cs)
{
if( !CFrameWnd::PreCreateWindow(cs) )
return FALSE;
// TODO: Modify the Window class or styles here by modifying
// the CREATESTRUCT cs
cs.style &=~WS_SYSMENU;
return TRUE;
}
{
if( !CFrameWnd::PreCreateWindow(cs) )
return FALSE;
// TODO: Modify the Window class or styles here by modifying
// the CREATESTRUCT cs
cs.style &=~WS_SYSMENU;
return TRUE;
}
#12
up
#13
同意中国男人
BOOL CMainFrame::PreCreateWindow(CREATESTRUCT& cs)
{
if( !CFrameWnd::PreCreateWindow(cs) )
return FALSE;
// TODO: Modify the Window class or styles here by modifying
// the CREATESTRUCT cs
cs.style =~WS_SYSMENU;
return TRUE;
}
BOOL CMainFrame::PreCreateWindow(CREATESTRUCT& cs)
{
if( !CFrameWnd::PreCreateWindow(cs) )
return FALSE;
// TODO: Modify the Window class or styles here by modifying
// the CREATESTRUCT cs
cs.style =~WS_SYSMENU;
return TRUE;
}
#14
BOOL CMainFrame::PreCreateWindow(CREATESTRUCT& cs)
{
if( !CFrameWnd::PreCreateWindow(cs) )
return FALSE;
// TODO: Modify the Window class or styles here by modifying
// the CREATESTRUCT cs
cs.style =~WS_SYSMENU;
return TRUE;
}
{
if( !CFrameWnd::PreCreateWindow(cs) )
return FALSE;
// TODO: Modify the Window class or styles here by modifying
// the CREATESTRUCT cs
cs.style =~WS_SYSMENU;
return TRUE;
}
#15
再去掉WS_MAXIMIZEBOX和WS_THICKFRAME风格
#16
要双击没反应??那就要响应WM_NCLBUTTONDBLCLK消息
Ctrl+W打开ClassWizard,点ClassInfo->Message filter中的Windows,
然后在MessageMaps里选择CMainframe,这样就可以选WM_NCLBUTTONDBLCLK消息了
在WM_NCLBUTTONDBLCLK消息响应函数中去掉所有代码,直接加上return;
OK 了
Ctrl+W打开ClassWizard,点ClassInfo->Message filter中的Windows,
然后在MessageMaps里选择CMainframe,这样就可以选WM_NCLBUTTONDBLCLK消息了
在WM_NCLBUTTONDBLCLK消息响应函数中去掉所有代码,直接加上return;
OK 了
#17
BOOL CMainFrame::PreCreateWindow(CREATESTRUCT& cs)
{
if( !CFrameWnd::PreCreateWindow(cs) )
return FALSE;
// TODO: Modify the Window class or styles here by modifying
// the CREATESTRUCT cs
cs.style =~(WS_MAXIMIZEBOX|WS_MAXIMIZEBOX) ;
return TRUE;
}
{
if( !CFrameWnd::PreCreateWindow(cs) )
return FALSE;
// TODO: Modify the Window class or styles here by modifying
// the CREATESTRUCT cs
cs.style =~(WS_MAXIMIZEBOX|WS_MAXIMIZEBOX) ;
return TRUE;
}
#18
各位高手回答得真精彩,等下一定给分
还有个问题:
显示位图得时候,怎样把一张图显示在整个Cview窗口所在得区域?
还有个问题:
显示位图得时候,怎样把一张图显示在整个Cview窗口所在得区域?
#19
BITBlT函数!或者用StretchBlt具体看MSDN
#20
可用PatBlt,或者用一个循环来BitBlt