2

私は PyQt4 を使用して、多数の QLineEdit および QSpinBox 入力とのインターフェイスを作成しています。両方とも丸みを帯びた外観にしたいのですが、これはスピンボックスの場合に問題を引き起こします。

スタイルシートの関連部分は次のようになります。

QDialog {
    background-color: #444;
}

QLabel, QLineEdit, {
    background-color: #eee;
    border-radius: 8px;
}

QSpinBox{
    background-color: #eee;
}

次のようなインターフェイスを提供します。

UI スクリーンショット

border-radiusQSpinBox と QComboBox に (値が 0 であっても) を含めると、次のようになります。

不具合のある UI のスクリーンショット

矢印が Windows XP/Vista テーマから単純なデフォルトの外観にどのように変化したかに注目してください。

これはなぜ起こり、どうすれば防ぐことができますか?

私が見たいのは、スピンボックスとコンボボックスの主な形状がライン編集のような形になっていることです. ネイティブのデフォルトを使用したいので、カスタム矢印画像を設定しようとはしませんでした。それとも、それが本当に私の最善/唯一の選択肢ですか? ありがとう!

4

2 に答える 2

2

ウィジェットのスタイルシートを変更すると、QCssStyle でスタイルされます。スタイルが設定されていないすべてのサブコントロールをデフォルト スタイルにフォールバックします。目的の外観を得るには、コントロール全体をスタイルする必要があります。混ざりません

于 2012-05-22T18:21:09.920 に答える
2

このQStyleを調べて、ウィジェットのスタイルをQWindowsStyleQMacStyleまたはQMotifStyleに変更するアイデアを得ます。また、特定のウィジェットのスタイルシートを設定すると、値のみsetが更新され、残りのプロパティはinheritedそのparentウィジェットから取得されます。widget style設定中に上記のように指定してみてくださいstylesheet

于 2012-05-22T18:21:55.723 に答える