背景信息:我正在开发一个Windows 10应用程序。在我的应用程序中,我正在使用嵌套的控制台。我熟悉GetSystemMetrics(),并使用它的一些参数来定义控制台的物理外观(即SM_CXBORDER、SM_CXDLGFRAME等)。
Snip: 嵌套子控制台
问题:如果我希望嵌套的子控制台(即子控制台)是可调整大小的,应该查看哪些参数?我的当前逻辑将用户cmd输出到此控制台。加班费,产出累积。例如,如果用户输入cmd Time 10次,那么他/她将需要开始滚动输出以查看任何以前的输出。在所需的场景中,用户可以输入10次cmd Time,而不必滚动,这可以通过垂直扩展控制台来完成。作为用户,我宁愿扩展控制台,也不愿滚动输出。这纯粹是为了更好的能见度和减少拥堵。
尝试:--我尝试更改DLGFRAME、DLGWINFRAME、RESIZEFRAME和SCROLL。然而,我没有取得多大的成功。
发布于 2018-07-30 18:13:01
在经典的Windows中没有布局引擎可以自动扩展窗口大小
“将窗口大小与文本相匹配”是一个只在更复杂的GUI工具包中实现的特性。
如果您坚持在GUI中使用经典的Windows (有点像使用石器时代的工具),那么唯一的选择是计算呈现的文本有多大(假设它总是一行,或者使用带有DrawText标志的DT_CALCRECT ),并将主窗口和文本控件扩展到这个数量。
总的来说,切换到真正的GUI工具包要比与WINAPI搏斗和重新发明极其复杂的车轮要明智得多。
顺便说一句,不要称它为控制台--因为控制台是指使用不同API的Windows控制台终端--您的问题与现有术语混淆了
https://stackoverflow.com/questions/51599821
复制相似问题