2011-01-13 24 views
0

Qtアプリケーションを開発しています。QFontComboboxを使用しています。すべてのフォントをリストする必要があります。アプリケーションはデザイナーによって使用され、多くのフォントがインストールされています。私はコンボボックスに多くのフォントがないことが通知されました。私はドキュメントを読んで、デフォルトでコンボボックスはすべてのフォントを読み込むべきです。 私はフォントが欠けている可能性があり、なぜフォントを読み込むことができるのかについての解決策または少なくともいくつかのヒントが必要です。アプリケーションはクロスプラットフォームでなければならないので、可能であればネイティブライブラリを呼び出さないほうが良いでしょう。QFontCombobox(Qt 4.7)フォントがありません

答えて

2

あなたはフォントファミリは、Qtので認識されているものを見るために

QStringList QFontDatabase::families (WritingSystem writingSystem = Any) const 

機能を使用することができます。リストが何らかの形で不完全な場合は、

int QFontDatabase::addApplicationFont (const QString & fileName) [static] 

の機能を持つフォントを追加できます。

+0

これをテストした結果、コンボボックスと同じ結果が得られましたが、フォントが見つからない人がWindowsレジストリにフォントを見つけていないことが表示されるようになりました。 Qtではアクセスできません) – simion314

2

QFontComboboxはフォントを表示せず、フォントファミリを表示します。ツリー内のすべてのフォントを列挙する方法については、qtdemo/Paintingのフォントサンプラーの例を参照してください。

関連する問題