9

QLineEditをスタイリングして、検索ボックスとして使用するために境界線を丸くします。境界線自体の丸めは簡単でしたが、フォーカスがあるときにウィジェットの強調表示された部分を丸める方法を私は一生理解できません。QLineEdit :: focusを試しましたが、これは内側の境界線のみを変更します。以下の画像は、フォーカスを取得すると、丸みを帯びたqlineeditの錯覚がどのように失われるかを示しています。

QListView, QLineEdit {
    color: rgb(127, 0, 63);
    selection-color: white;   
    border: 2px groove gray;
    border-radius: 10px;
    padding: 2px 4px;
}
QLineEdit:focus {
    color: rgb(127, 0, 63);
    selection-color: white;   
    border: 2px groove gray;
    border-radius: 10px;
    padding: 2px 4px;
}

QLineEdit:edit-focus {
    color: rgb(127, 0, 63);
    selection-color: white;   
    border: 2px groove gray;
    border-radius: 10px;
    padding: 2px 4px;
}

フォーカスがある場合とない場合の画像: それなし と

4

2 に答える 2

5

Mac の場合:

widget.setAttribute(Qt::WA_MacShowFocusRect, 0);

この回答を参照してください。それ以外の場合は、そこにあるフォーカス四角形の描画をサブクラス化QStyleして削除する必要があります。Nokia FAQ 736 (フォーカス四角形の描画を回避する方法) を参照してください。

于 2010-04-15T02:51:19.087 に答える
-1

適切にスタイリングすることで問題を解決できるはずです。Qt スタイルシート リファレンス、疑似状態のリストをQLineEdit:focus参照してください。

于 2010-04-14T02:57:02.860 に答える