3
后不同的对话框边框我刚才移植从Visual Studio 6一个基于对话框的MFC程序到Visual Studio 2013年没有发生重大问题,并在程序运行VS下完美编译一次2013年从Visual Studio 6代码移植到Visual Studio 2013
唯一明显的区别是对话框的边框(请参阅Windows 7下的下面进行截屏)的厚度。
更多的事实:
- 这不是一个明显的问题,在新旧版本都体现是严格相同的。
- 的.RC没有被VS2012项目转换过程中搞砸了。如果我用VS6再次编译转换后的项目,我会得到精简的边框。
- 我可以在Visual Studio中再现与新鲜向导生成程序的问题6.
- 与
AfxMessageBox
所示的消息框也具有薄边界时VS6和编译 与VS2013当粗边框编译。
在新版本的Windows,为边框厚度的系统参数被断成两截。这一变化的向上兼容性在微软方面没有得到充分考虑。很可能VS2013正确补偿变化,而VS6不补偿。 –
@MarkRansom您能更具体地了解您所写的关于边界思考的东西吗?即使是使用原始':: MessageBox'显示的消息框也表现出这种行为差异;这就像是有一些应用程序的广泛设置被应用在某种程度上 - 有[另一个SO问题](http://stackoverflow.com/questions/34768621/win32-control-distortion-in-visual-studio-2013)处理类似问题。 –
我想到的参数是'SM_CXPADDEDBORDER',当VS6出来时它不存在。我现在没有更多的信息,对不起 - 如果我做了,我会留下一个答案。如果有帮助,我认为VS6边框太薄,VS2013边框是正确的。 –