我有一个继承DragQLineEdit
。
QLineEdit
我已将数组定义为:
DragQLineEdit m_textEdits[FAVORITE_ROWS][FAVORITE_COLUMNS];
所以我能够生成编辑文本框的网格。 FINE。
但是当我想改变第一个编辑文本框的颜色时,就像这样:
m_textEdits[0][0].setStyleSheet("QLineEdit { background: rgb(255,255,255); selection-background-color:rgb(233,0,0); }");
它给了我编译器错误:没有名为StyleSheet的成员。
在阅读this问题的接受答案后,我做了以上操作。
基本上,我有以下功能:
void Favorites::mySlot(int r,int c,int row,int col)
{
m_sendButtons[r][c].setText(m_sendButtons[row][col].text());
m_sendButtons[row][col].setText("Send");
m_textEdits[r][c].setStyleSheet(m_textEdits[row][col].StyleSheet);
m_textEdits[row][col].setStyleSheet("QLineEdit { background: rgb(255,255,255); selection-background-color:rgb(233,0,0); }");
}
答案 0 :(得分:3)
你有......
m_textEdits[r][c].setStyleSheet(m_textEdits[row][col].StyleSheet);
应该是......
m_textEdits[r][c].setStyleSheet(m_textEdits[row][col].styleSheet());
注意小写的''在styleSheet
中,styleSheet
表示函数调用后的括号。