I have two custom-styled QPushButton buttons. Here is the stylesheet for the Ok button:
QPushButton
{
background-color:#9dce2c;
border-radius:7px;
border:1px solid #83c41a;
color:#ffffff;
font-size:15px;
font-weight:bold;
padding:4px 24px;
text-decoration:none;
}
QPushButton:pressed
{
border:2px solid black;
}
Now here’s what it looks like:

which is fine. However, if the button is clicked (gets focus), it starts to look like this:

Note that slight shadowy rectangle around the text. It looks as if the text is being “selected”. When the button loses focus, it starts looking normal again. I suppose it happens because the selected controls get highlighted like this:

However, I want my button to stay unchanged, no matter whether it’s focused or not. Is there any way to solve this issue?
Found the solution. It turned out to be very simple.
The issue was indeed caused by the button receiving focus. All I needed to do is set the button’s
focusPolicyattribute toNoFocus. It can be done either in QtDesigner:or in the code:
ui.okButton->setFocusPolicy(Qt::NoFocus);After it’s done, the clicks on the button will not cause it to get focus, and the appearance will not change.