gpt4 book ai didi

C++ QLineEdit : setmaxlength() for number of bytes and not the number of the characters?

转载 作者:塔克拉玛干 更新时间:2023-11-03 07:28:26 24 4
gpt4 key购买 nike

我的应用程序中有一个 QLineEdit,我应该能够在其中输入最多 10 字节的英文字符,而在输入日文字符时,如果字符是 2 字节,我应该只能输入 5 个日文字符和如果日文字符是 1 字节字符,我应该可以输入 10 个日文字符。请帮我解决这个问题。

我试过用

QLineEdit::setMaxLength(10) 

但它只是工作正常包含英文字符但不包含日文字符。

有什么想法/建议吗???

最佳答案

请注意,用于字符的字节数完全取决于您使用哪种编码来存储它。QString 对所有字符使用 2 个字节,但大概您对特定编码感兴趣例如 UTF-8。我建议您不要使用 setMaxLength,而是需要创建一个 QValidator 子类来实现您的特定验证规则并将其设置在您的行编辑中。

关于C++ QLineEdit : setmaxlength() for number of bytes and not the number of the characters?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15613805/

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