QTableView - Цвет фона выбора

Я использую следующий код для установки стиля таблицы в симуляторе (S60) (Nokia Qt SDK).

searchTable->setStyleSheet("background: rgb(255,255,255);color:rgb(0,0,0); font-family:Arial Narrow;font-size:20px; border: 4px outset rgb(255,255,255);gridline-color: #669933;"
                           "selection-background-color: qlineargradient(x1: 0, y1: 0, x2: 0, y2: 1,stop: 0 #486909, stop: 1 white);"
                              );

Но когда я выбираю элемент в данных, я получаю следующий вывод. См. приложение.

альтернативный текст

Помогите пожалуйста.... Что я сделал не так.. Заранее спасибо.


person Finder    schedule 14.10.2010    source источник


Ответы (1)


Я предполагаю, что ваша ошибка в том, что вы настроили таблицу стилей только для QTableView, а не для всех его дочерних виджетов: ячеек. Вы можете попытаться записать свой код стиля в файл «.qss», добавить его в файл ресурсов вашего приложения, а затем загрузить его в свой main.cpp с помощью этого кода:

int main(int argc, char *argv[])
{
    QApplication a(argc, argv);
    MainWindow w;
    QFile file(":/qss/stylesheet.qss");
    file.open(QFile::ReadOnly);
    QString styleSheet = QLatin1String(file.readAll());
    file.close();
    qApp->setStyleSheet(styleSheet);

    w.show();
}

В вашем файле стиля вы должны написать что-то вроде этого:

QLineEdit{
border: 2px solid grey;
border-radius: 10px;
padding: 0 8px;
background: white;
selection-background-color:darkgrey;
}

Таким образом, все виджеты QLineEdit будут отображаться с вашими правилами стиля.

person Alberto    schedule 15.10.2012