C++ Windows字体大小问题

发布于 2024-12-06 07:29:00 字数 138 浏览 1 评论 0原文

首先我使用 Windows api。

所以我有一个编辑控件,最多需要能够容纳 22 个字符。 目前只有 12 种适合我想要使用的字体。

有没有什么方法可以很好地调整用户正在输入的字体大小,以便在不创建一堆字体的情况下容纳更多文本?

First i'm using the windows api.

So I have an edit control, that needs to be able to fit 22 characters max.
Currently only 12 fit with the font I'd like to use.

Is there any way to resize the font well the user is typing to allow for more text to fit without creating a bunch of fonts?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

伴随着你 2024-12-13 07:29:00

嗯,你可以。为 EN_CHANGE 实现一个消息处理程序,以便您知道文本已更改。使用 GetWindowDC 和 DrawTextEx 以及 DT_CALCRECT 和 DT_EDITCONTROL 标志来测量文本的大小。如果控件的字体不合适,则发送 WM_SETFONT 来更改控件的字体并重复。

然而,用户对最终结果感到满意的可能性很小。

Well, you could. Implement a message handler for EN_CHANGE so you know the text was changed. Use GetWindowDC and DrawTextEx with the DT_CALCRECT and DT_EDITCONTROL flags to measure the size of the text. Send WM_SETFONT to change the font for the control if it doesn't fit and repeat.

The user being pleased with the end result is however very unlikely.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文