gpt4 book ai didi

c++ - 在 Windows 10 操作系统中扩展控制台

转载 作者:行者123 更新时间:2023-11-28 04:35:25 25 4
gpt4 key购买 nike

背景信息:我正在开发 Windows 10 应用程序。在我的应用程序中,我正在使用嵌套控制台。我熟悉 GetSystemMetrics() 并使用它的一些参数来定义我的控制台物理外观(即 SM_CXBORDERSM_CXDLGFRAME 等)。

片段: Nested Child Console

问题:如果我希望我的嵌套子控制台(即子控制台)可调整大小,我应该查看什么参数?我当前的逻辑将用户 cmd 输出到此控制台。加类,输出积累。例如,如果用户输入 cmd Time 10 次,那么他/她将需要开始滚动输出以查看之前的任何输出。在所需的场景中,用户可以输入 cmd Time 10 次而无需滚动,这可以通过垂直扩展控制台来完成。作为用户,我宁愿扩展控制台也不愿滚动查看输出。这纯粹是为了提高能见度和减少拥堵。

尝试:我尝试更改DLGFRAMEDLGWINFRAMERESIZEFRAMESCROLL。然而,我并没有取得太大的成功。

最佳答案

经典的 Windows API 中没有布局引擎可以使您的窗口自动扩展大小

“使窗口大小适合文本”是一种仅在更复杂的 GUI 工具包中实现的功能。

如果您坚持为您的 GUI 使用经典的 Windows API(有点像使用石器时代的工具)——唯一的选择是计算您渲染的文本将有多大(要么假设它总是一行,要么使用DrawText with the DT_CALCRECT flag) 并按该数量扩展主窗口和文本控件。

总的来说,切换到真正的 GUI 工具包比与 WINAPI 搏斗并重新发明极其复杂的轮子要明智得多

顺便说一句,不要称它为控制台 - 因为控制台是一个术语,用于指代使用不同 API 的 Windows 控制台终端 - 你的问题与现有术语混淆

关于c++ - 在 Windows 10 操作系统中扩展控制台,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51599821/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com