QT5.2中QButtonGroup相干

QT5.2中QButtonGroup相关
在QT5.2,VS2012下:
QButtonGroup* pBtnGroup;

m_pBtn1->SetStyleSheet1();//给Button设置样式表,鼠标左键按下时已有效果
m_pBtn2->SetStyleSheet1();
pBtnGroup = new QButtonGroup(this);
pBtnGroup->setExclusive(true);//设为互斥
pBtnGroup->addButton(m_pBtn1);
pBtnGroup->setId(m_pBtn1, 0);
pBtnGroup->addButton(m_pBtn2);
pBtnGroup->setId(m_pBtn2, 1);


void A::keyPressEvent(QKeyEvent *pEvent)
{
switch ( pEvent->key() ){
case Qt::Key_Up:
emit pBtnGroup->buttonPressed( curidx-1 );//能响应相关connect,却没有改变样式
pBtnGroup->button( curidx+1 )->setDown(true);//能改变样式,却不为互斥
break;
}
return QScrollArea::keyPressEvent(pEvent);
}

请问:在设计中发现,已将QButtonGroup设为互斥组,当手动操作时可正确执行;当仅对其子Button发出Pressed或者Clicked信号时(由代码执行而非手动点击)均无法改变其样式表中设置的样子,但可以响应连接对应Button的Pressed信号槽,如何解决?
------解决思路----------------------
不是很明白,但是QSS里可以根据状态修改使用不同的效果,如
QPushButton:pressed {
    background: red;
}
QPushButton:checked {
    background: blue;
}

Qt自带的帮助文档里有QSS的完整帮助说明。