3

Linux で Qt アプリケーション ビルドを開発することに携わっています。最初にソース コードをダウンロードして Windows 7 でコンパイルしましたが、その後 Ubuntu で作業することにしました。問題は、Linux のアプリケーションが Win95 時代のように見えることです。Qt4 Settings をインストールして GTK+ スタイルを選択しましたが、外観は少しだけ改善されましたが、見た目はまだ非常に醜いです (256 色のパレットのように、フォントはイタリック体です)。多くの gtk ライブラリもインストールしましたが、何も役に立ちませんでした。Qt-4.7.4 を使用しています。Windowsでは問題が発生しないため、Ubuntuも使用している上司のコンピューターでも問題が発生しないため、アプリケーションははるかに良く見えます。

アプリはスタイルを QPlasticStyle 自体に変更します。

ご回答ありがとうございます。


うーん、また色々試してみたけど何も変わらなかった。多分私はあなたに問題を見せます。アプリがどのように見えるか (多かれ少なかれ) (ss は私の共同作成者の 1 人によって作成されました): http://postimage.org/image/70p6sw7xd/full/

実際にどのように見えるか (ss は私が作成): http://postimage.org/image/48psktnuj/full/

これまでに行っていないことが 2 つあります
。1) 最初に Qt-4.8.1 をインストールしましたが、いくつかの OpenGL エラーが発生していたmakeので、4.7.4 バージョンをダウンロードしました (私の上司とcos が使用している) で、インストールに苦労していました。最後に、4.8.1 の qt-make を 4.7.4 の qt-make で上書きしたところ、正常にコンパイルされました。しかし、私は「疑問のこと」に遭遇しました。要点 - すべての Qt アプリケーションは (Help-> About Qt)、Qt-4.8.1 を使用していることを示しており、問題と何らかの関係があるのではないかと思います。

2) 2 つ目は、私のグラフィックです。Nvidia Optimus を搭載した MSI CX640 ノートブックを使用しています。Ubuntu をインストールした後、専用の GT520M の代わりに、統合された Intel HD3000 を使用してそれを作成する必要がありました (これにより、ファンの動作が不要になりました)。その方法をグーグルで調べたところ、実際にGT520Mを無効にすることに成功しました。そのポイントは何ですか-よくわかりませんが、解決策を探していたサイトでいくつかのOpenGLのことが言及されていたことを覚えています)。これは問題とは何の共通点もないと思いますが、今はすべてを洞察しているほどイライラしています。

おそらく、これらは問題の概要をよりよく示すことができます。

PS。あなたの試みに感謝します、私はそれらに感謝します。

4

6 に答える 6

6

qt4-qtconfigパッケージをインストールしてみてください。このツールを使用してqtconfig、ルック アンド フィールをカスタマイズします。

sudo apt-get install qt4-qtconfig
qtconfig &

編集:

見た目が非常に悪い場合は、~/.config/Trolltech.confファイルを削除 (または一時的に名前を変更) してみてください。次に、Qt4 Settings を使用して再起動します。また、Oxygen と QtCurve のスタイルをインストールすることをお勧めします。

于 2012-05-15T22:49:48.140 に答える
0

Qt 4 を使用している場合は、おそらくグラフィック システムを「ラスター」に設定する必要があります。Qt 5 で実行できるかどうかはわかりません (setGraphicsSystem 関数がなくなったため、コマンド ライン スイッチを試してください)。

これを行うにはいくつかの方法があります。http://qt-project.org/doc/qt-4.8/qapplication.html#setGraphicsSystemを参照してください。

void QApplication::setGraphicsSystem ( const QString & システム ) [静的]

デフォルトのグラフィック バックエンドをシステムに設定します。これは、画面上のウィジェットと QPixmap に使用されます。利用可能なシステムは「native」、「raster」、「opengl」です。

グラフィック バックエンドを設定する方法はいくつかあります。優先度の高い順に並べてあります。

  • アプリケーション コマンドライン -graphicssystem スイッチ
  • QApplication::setGraphicsSystem()
  • QT_GRAPHICSSYSTEM 環境変数
  • Qt configure -graphicssystem スイッチ

最も優先順位の高いスイッチが無効な名前を設定した場合、エラーは無視され、デフォルトのバックエンドが使用されます。

警告: この関数は、QApplication コンストラクターが呼び出される前にのみ有効です。

于 2014-07-08T17:25:21.643 に答える
0

プロジェクトをクリーンアップしようとしましたか?

.cpp、.h、および .pro 以外のすべてを削除します

これには、削除する必要がある拡張子 .pro.user のファイルが含まれます。また、debug および release フォルダーも削除します。

次に、通常どおりコマンド ラインからqmakeandを実行します。make

実行時にアプリケーションを「sudo」していますか? それはまた別のスタイルを呼び出します。

于 2012-05-15T21:29:07.193 に答える
0

さて、数日経ちましたが、まだ苦労しています。

しかし、Qt 4.7.4 を適切に再インストールしました。その上にビルドすると、Ubuntu のものではなく Monotype のようなフォントにもかかわらず、アプリケーションは見栄えがします。残念ながら、これは Qt の問題であり、これを補うのは困難です。多分あなたは今それを行う方法ですか?私は自分の問題を解決するための最後の部分にいます。

編集:万歳!解決しました!http://qt-project.org/forums/viewthread/14269/#74232 および http://ubuntuforums.org/showthread.php?t=1559654を使用して、プロジェクトと互換性のある 4.8.1 をスタックしました。

みんな、ありがとう。

于 2012-05-18T15:38:13.277 に答える
0

ubuntu 14.04では、通常のユーザーとして実行するとアプリは問題なく見えましたが、ルートとして実行するmotifと非常に醜いテーマを使用していました。

以下を使用して、見栄えの良いデフォルトの輝きテーマをアプリに使用させることができました。

app.setStyle("gtk")

インスタンスはどこappにありますかQApplication

http://doc.qt.io/qt-4.8/qapplication.html#setStyle-2を参照してください

于 2015-10-13T21:27:16.973 に答える