gpt4 book ai didi

qt - QFileDialog 本地化

转载 作者:行者123 更新时间:2023-12-02 16:48:31 26 4
gpt4 key购买 nike

QFileDialog 在我的代码中使用如下:

QFileDialog fileDlg;
fileDlg.setFileMode(QFileDialog::AnyFile);
fileDlg.setViewMode(QFileDialog::List);
fileDlg.setNameFilter("Excel Files(*.csv)");
fileDlg.setDefaultSuffix("csv");
fileDlg.setAcceptMode(QFileDialog::AcceptSave);
fileDlg.exec();

不幸的是,这不使用用户当前区域设置中的文本。我希望保存按钮是“保存”。此外,当我单击对话框时,按钮的文本设置为“打开”,而在我的语言环境中它应该为“打开”。

如何向 QFileDialog 提供本地化字符串?

最佳答案

我知道这个问题已被回答并接受,但是正确的方法不是手动翻译 Qt 已经提供的内容,而是加载 Qt 中包含的翻译 像这样:

 /* load the system translations provided by Qt */
QTranslator qtTranslator;
qtTranslator.load("qt_" + QLocale::system().name(),
QLibraryInfo::location(QLibraryInfo::TranslationsPath));
app.installTranslator(&qtTranslator);

/* load our custom translations for this application */
QTranslator myappTranslator;
myappTranslator.load("myapp_" + QLocale::system().name());
app.installTranslator(&myappTranslator);

这样,Qt 将翻译它已经知道的内容(比如它自己的小部件),并使用应用程序提供的自定义翻译来完成其余的工作。

关于qt - QFileDialog 本地化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8906944/

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