QString 度数符号

Den*_*aud 3 qstring qt special-characters

我想知道在翻译中写学位符号的最佳和最干净的解决方案是什么。

我有,tr( "Snap to 90%1 angles" ).arg( QString::fromUtf8( "°" ) )但这不是很好。

我试过没有成功: tr( "Snap to 90° angles" )

我在 QAction 中使用它: mCommonAngleAction = new QAction( tr( "Snap to 90° angles" ), menu );

结果如下:

在此处输入图片说明

你有什么好的解决办法吗?

Iul*_*liu 5

您要打印的字符串很大程度上取决于您要打印的位置。那么你想在哪里打印Snap to 90° angles

如果您想将QLabel文本设置Snap to 90° angles为一段代码label->setText(tr("Snap to 90° angles"));就好了。

如果要将其打印到控制台,则取决于控制台。如果控制台不支持UTF-8,除非您在该控制台上设置标志以支持UTF-8字符,否则您就不走运了。

在 QMainWindow 构造函数中,使用代码

ui->menubar->actions().first()->setText(QObject::tr("Snap to 90° angless"));
Run Code Online (Sandbox Code Playgroud)

产生:

在此处输入图片说明