qt 应用程序中的 Unicode 字符不显示

2024-01-04

我试图通过将每种语言插入到我的 qt 应用程序中显示不同的语言字符串QMap<QString, QString>因此它可以在多个地方重复使用,并放入应用程序中的不同组合框中。我这样做是通过 创造QMap就像 CTOR 中这样:

m_langMap.insert(QString::fromWCharArray(L"English"), "english");
m_langMap.insert(QString::fromWCharArray(L"Dansk"), "dansk");
m_langMap.insert(QString::fromWCharArray(L"Nederlands"), "dutch");
m_langMap.insert(QString::fromWCharArray(L"Čeština"), "czeck");
m_langMap.insert(QString::fromWCharArray(L"Slovenský"), "slovak");
m_langMap.insert(QString::fromWCharArray(L"Magyar"), "hungarian");
m_langMap.insert(QString::fromWCharArray(L"Român"), "romanian");
m_langMap.insert(QString::fromWCharArray(L"Latviešu"), "latvian");
m_langMap.insert(QString::fromWCharArray(L"Lietuvių"), "lithuanian");
m_langMap.insert(QString::fromWCharArray(L"Polski"), "polish");
m_langMap.insert(QString::fromWCharArray(L"Português"), "portuguese");
m_langMap.insert(QString::fromWCharArray(L"Español"), "spanish");
m_langMap.insert(QString::fromWCharArray(L"Français"), "french");
m_langMap.insert(QString::fromWCharArray(L"Italiano"), "italian");
m_langMap.insert(QString::fromWCharArray(L"Svenska"), "swedish");
m_langMap.insert(QString::fromWCharArray(L"Русский"), "russian");
m_langMap.insert(QString::fromWCharArray(L"Українська"), "ukranian");
m_langMap.insert(QString::fromWCharArray(L"Русский"), "russian");
m_langMap.insert(QString::fromWCharArray(L"中文"), "chinese");
m_langMap.insert(QString::fromWCharArray(L"日本語"), "japanese");

然后我将它们插入组合框中:

QMap<QString, QString>::const_iterator it = m_langMap.begin();
while (it != m_langMap.end())
{
    ui->comboBox->addItem(it.key());
    ++it;
}

当应用程序运行时,我看到以下内容:

但是,如果我创建一个单独的 .ui 文件并以相同的方式插入地图,我会看到以下内容(即使我将这个单独的 Dialog 类包含到同一应用程序中),所以很明显,只要应用程序不存在,就不存在字体问题知道如何渲染不同的字符集......但我无法弄清楚为什么第一个不会渲染字符集?

有人能告诉我为什么第一个不起作用但第二个却起作用?我检查了设计器,在下面显示的两个 ui 文件中,其区域设置都设置为“C,默认”。我似乎无法弄清楚还有什么原因导致第一个不起作用,而第二个在同一应用程序中起作用。

谢谢你的帮助!

另一个测试对话框:


您的代码是正确的,但问题是您的源文件不能包含 Unicode 字符 - 显然它使用不同的编码。

将文件另存为 UTF-8,一切都应该正常!

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

qt 应用程序中的 Unicode 字符不显示 的相关文章

  • QWebEngineView 在 load() 或 page() 方法上崩溃

    我正在致力于将 Qt 5 5 QWebView 项目移植到 Qt 5 6 测试版 QWebEngine 我已经阅读了移植指南here https wiki qt io Porting from QtWebKit to QtWebEngine
  • MySQL 与日语字符

    我试图弄清楚如何创建一个表 以便我可以在其中插入日语名字 现在我有 Type InnoDB Encoding UTF 8 Unicode utf8 Collation utf8 general ci 但是 当我插入字符时 它显示为 当我使用
  • 标准化 UTF-8 到底是什么?

    The 重症监护室项目 http userguide icu project org transforms normalization 现在也有一个PHP库 http us php net manual en class normalize
  • 日历小部件的特定单元格如何着色?

    日历小部件的特定单元格如何着色 我认为你应该扩展 QCalendar 类并添加一些行为 我在这里找到了一些东西 http www qtforum org article 21614 paintcell and qcalendarwidget
  • Qt - 添加超链接到对话框

    有没有办法在 Qt 对话框中添加可点击的超链接 IE 它应该看起来像一个超链接 蓝色文本 当您单击它时 它应该在浏览器中打开该超链接 像这样的东西 Use QLabel setOpenExternalLinks bool 并在标签上设置文本
  • 暂停 python 脚本直到事件发生,而不挂起/阻止 GUI

    尝试使用 Kivy 从 PyQt 迁移 我什至无法想象解决方案 我有数千行代码 使用 Qt 的对话框进行文本输入 也就是说 当到达他们的代码行时 他们会 停止 脚本 直到按下 确定 按钮 以便他们可以返回文本输入 Kivy 没有该功能 因此
  • 如何在 Java 字符串中用 \u 替换 \\u

    我有一个格式的字符串 aaa u2022bbb u2014ccc 我想显示这两个特殊字符 但为了能够做到这一点 我必须首先将字符串转换为以下格式 aaa u2022bbb u2014ccc 我尝试编写这个 但它给出了编译错误 String
  • 仅具有年/月视图的 PyQt 日历

    在 Qt Designer 中 QDateTimeEdit 具有日历视图选项 通过设置显示格式 我只能显示月 年 但是 当用户单击视图时 它会自动显示每日日历 有没有办法让它只显示月 年日历 为了形象地解释一下 Windows 日历具有与
  • 如何找到位于给定 (X,Y) 位置的 DOM 节点? (命中测试)

    我有 HTML 文档中一个点的坐标 X Y 如何确定这些坐标处的 DOM 节点是什么 一些想法 是否有我错过的 DOM 命中测试函数 它需要一个点 X Y 并返回那里的 DOM 元素 有没有一种有效的方法来遍历 DOM 元素树来查找包含元素
  • wcslen() 在 Xcode 和 VC++ 中的工作方式不同

    我找到wcslen 在 VC 2010 中返回正确的字母计数 而 Xcode 则不然 例如 下面的代码在 VC 2010 中返回正确的 11 但在 Xcode 4 2 中返回错误的 17 const wchar t p L 123abc 1
  • PHP 中根据 W3C 标准化 Unicode

    在验证我网站的 HTML 代码时W3C 验证器 http validator w3 org 我收到以下警告 Line 157 Column 220 Text run is not in Unicode Normalization Form
  • QImage 转换为 QML

    我的应用程序通过网络接收 JPEG 实时流 每秒 16 帧 直播流应使用 QML 显示 接收部分是用C 编写的 所有UI都是用QML编写的 如何将图像数据输入 QML 窗口 我已经研究过如何显示 QImage 但还没有找到解决方案 实现 Q
  • 如何释放Qthread对象的内存?

    我做过这样的事情 in the mainwindow s constructor QThread thr new QThread soundWorker work new soundWorker connect this SIGNAL pl
  • Qt 要包含哪些标头?

    使用 Qt 使用 C 进行编程时 我应该包含哪些内容 仅包含 2 个 include
  • jquery .text() 和 unicode

    我想显示 开锁 字符 http www fileformat info info unicode char 1f513 index htm在我的 HTML 链接文本中 如果我直接这样做 它会正确显示 a x1f512 a 但我发现没有办法用
  • Qt 中的智能指针[重复]

    这个问题在这里已经有答案了 就像已经写过一样here http blog qt digia com 2009 08 25 count with me how many smart pointer classes does qt have Q
  • Wingdings/Symbol 字符与其 Unicode 等效项之间的映射

    MsWord 使用 Wingdings 和 Symbol 字符作为项目符号 默认情况下它们的十六进制值为 F0A7 和 F0B7 我想将项目符号转换为其 Unicode 等效项 当然 这取决于实际使用的字体 因此 F0A7 Wingding
  • 如何将 qmake 转换为 cmake?

    我有一个 pro我的项目上的文件 但现在我想将其移植到CMakeLists txt文件 我怎样才能做到这一点 QT core QT gui CONFIG c 11 TARGET test CONFIG console CONFIG app
  • 在 Qt 5.12 的 OpenCV dll 上找不到入口点

    TLDR 将 OpenCV 与 QT MingW 链接会使应用程序在调试时崩溃 但不会在发布时崩溃 我正在尝试在基于 Qt 的大型多操作系统项目中使用 OpenCV 我已经轻松地为 Mac 和 Linux 构建了 OpenCV 但在 Win
  • 如何在 Blackberry Cascades 中显示具有特定号码的电话板

    我正在使用带有 C QT 和 QML 的 Blackberry Cascades 10 Beta 3 SDK 以及 Blackberry 10 Dev Alpha Simulator 和 QNX Momentics IDE 并且我正在尝试实

随机推荐

  • 使用 Gradle 将依赖项添加到运行时映像

    我不知道如何添加依赖项 我的模块需要 Log4j 我向模块信息添加了要求 我还添加了 gradle 依赖项 我可以运行项目 但无法创建自定义运行时映像 plugins id java id application id org openjf
  • 返回数组中重复元素的最佳方法

    这是我用来返回重复元素的方法 但是 当我的数组有大量长文本项目时 我面临着最危险的性能问题 例如浏览器关闭等 var arr 9 9 111 2 3 4 4 5 7 var sorted arr arr sort var results f
  • vscode Typescript Intellisense 仅显示第一个选项?

    我正在开发我的 React Native TypeScript 应用程序 今天突然 没有更新 没有更改设置 我的智能感知开始只显示第一个建议 无论如何 这个问题不是特定于特定类的 我已经多次重新启动Vscode 重新启动TS语言服务器 删除
  • 参数中包含空格的 Python 子进程调用在 Windows 上不起作用

    我正在运行一个 java 命令 该命令获取类路径和其他有空格的文件位置 Windows 似乎不喜欢它 我从 C Program Files Splunk 运行程序 其中有一个空格 这是我的命令 c1 os path join appdir
  • 如何获取TFS集合中所有项目的名称?

    关于如何从TFS获取集合参考here https stackoverflow com questions 16100991 how to get all collections from tfs 16100992 16100992 请参考h
  • Kube-proxy 或 ELB“延迟”HTTP 请求数据包[关闭]

    Closed 这个问题是与编程或软件开发无关 help closed questions 目前不接受答案 我们正在 AWS 中的 Kubernetes 1 9 3 上运行 Web API 应用程序 使用 KOPS 设置 该应用程序是一个部署
  • 用换行符/段落标记替换所有空格以制作单词列表

    我正在尝试列出我们在课堂上翻译的希腊语文本的词汇表 我想用段落标记替换每个空格或制表符 以便每个单词都出现在自己的行上 谁能给我 sed 命令 并解释我在做什么 我仍在尝试弄清楚 sed 对于相当现代的 sed 版本 编辑标准输入以产生标准
  • 通过 Azure Devops 部署 Nuget 包时未添加依赖项

    我创建了 net 标准库 创建后 我尝试通过选择项目文件中存在的包选项从我的视觉工作室创建 nuget 包 然后尝试在另一个控制台应用程序中使用本地创建的 nupkg 文件 它工作正常 它显示了预期的依赖关系 然后 我通过创建管道通过 Az
  • android:admob InterstitialAd 在 loadAd 时崩溃

    我正在使用 Admob 的 InterstitialAd 我的应用程序仅在第一次调用时才会在 loadAd 处崩溃 并且不可重现 每运行 100 200 次或多或少就会发生一次 广告单元 ID 肯定是正确的 因此 如果 loadAd 在第一
  • Spark CollectAsMap

    我想知道collectAsMap在Spark中是如何工作的 更具体地说 我想知道所有分区的数据聚合将在哪里进行 聚合发生在 master 或workers 中 在第一种情况下 每个工作人员将其数据发送到主设备上 当主设备从每个工作人员收集数
  • .htaccess:将根 url 重定向到子目录,但保留根 url

    我正在清理域的目录结构 在根目录中设置根 url 的内容对我来说是不幸的 并且需要一些关于如何正确使用 RewriteRule 的见解 The Gist I want 域名 tld to use 域名 tld 子目录 但仍然显示为域名 tl
  • 如何通过WCF处理大文件上传?

    我正在考虑将 WCF 用于一个项目 该项目需要人们能够将大文件 64MB 1GB 上传到我的服务器 我将如何使用 WCF 处理此问题 可能能够恢复上传 为了处理更大的客户群 我想通过 WCF 测试 JSON 这将如何影响文件上传 可以通过
  • 防止 TextInputLayout 使 TextInputEditText 变高

    我想要密码切换功能 看起来TextInputLayout有这个功能 没有TextInputEditText 但正如你看到下面的代码 即使我将高度设置为wrap content and app hintEnabled false 高度为Tex
  • 如何从 googleapi Youtube API 获取 XML 响应

    YouTube 似乎已将其 API 更新为较新的 API YouTube 数据 API v3 https developers google com youtube v3 突然我网站上的 YouTube 搜索不起作用了 我正在尝试更新它们以
  • Safari 原生代码

    有人熟悉 OS X Safari 版本 3 和 WebKit 中的本机代码吗 我正在使用 Javascript 来解析表单中的一些信息 我的输入之一名为 标签 当尝试使用以下方法获取该元素的值时 button is being passed
  • 尝试导入错误:“SomeObject”未从文件导出

    我已从 Webpack 3 升级到 Webpack 4 从那时起 我收到了很多关于未从某些文件导出的导入的警告 packages utils logging index ts Attempted import error Options i
  • VIM 配色方案默认不加载

    当我做 colorscheme vilight 它加载配色方案很好 所以我添加了 colorscheme vilight 到我的 vimrc 但它没有在启动时加载它 我错过了什么吗 也在我的配置中 set background dark s
  • 使用批处理文件跨驱动器移动目录

    我想从以下位置移动文件夹及其子文件C to D 通过使用批处理文件 我怎样才能做到这一点 我认为没有办法跨驱动器移动文件夹 这种 移动 只是复制后删除 所以你可以这样做 xcopy c example d example S E rmdir
  • 解决 yacc/ocamlyacc 中的减少/减少冲突

    我正在尝试解析 ocamlyacc 中的语法 与常规 yacc 几乎相同 它支持没有运算符的函数应用程序 如 Ocaml 或 Haskell 中 以及二元和一元运算符的正常分类 我遇到了与 运算符的归约 归约冲突 该运算符可用于减法和求反
  • qt 应用程序中的 Unicode 字符不显示

    我试图通过将每种语言插入到我的 qt 应用程序中显示不同的语言字符串QMap