If this is your first visit, be sure to
check out the
FAQ
by clicking the
link above. You may have to
register
before you can post: click the register link above to proceed. To start viewing messages,
select the forum that you want to visit from the selection below.
Welcome to
Qt Centre
.
Qt Centre
is a community site devoted to programming in C++ using the
Qt framework
. Over 90 percent of questions asked here gets answered. If you are looking for information about Qt related issue —
register
and post your question.
You are currently viewing our boards as a guest which gives you limited access to view most discussions and access our other features. By joining our
free
community you will have access to post topics, communicate privately with other members (PM), respond to polls, upload content and access many other special features. Registration is fast, simple and absolutely free so please,
join our community today
!
If you have any problems with the registration process or your account login, please
contact us
.
I have QStackedwidget in my application, In the first page, i have tablewidget.
i want to set stylesheet for Qtablewidget headerview.
but i can't able to set stylesheet.
I have tried following ways,
this->setStyleSheet(
" QHeaderView::section {"
" background-color: qlineargradient(x1:0, y1:0, x2:0, y2:1,"
" stop:0 #616161, stop: 0.5 #505050,"
" stop: 0.6 #434343, stop:1 #656565);"
" color: white;"
" padding-left: 4px;"
" border: 1px solid #6c6c6c;"
"}");
this->setStyleSheet( QStackedWidget QWidget#page { "
" QHeaderView::section {"
" background-color: qlineargradient(x1:0, y1:0, x2:0, y2:1,"
" stop:0 #616161, stop: 0.5 #505050,"
" stop: 0.6 #434343, stop:1 #656565);"
" color: white;"
" padding-left: 4px;"
" border: 1px solid #6c6c6c;"
"}");
but it is not working.
" QHeaderView::section {"
" background-color: qlineargradient(x1:0, y1:0, x2:0, y2:1,"
" stop:0 #616161, stop: 0.5 #505050,"
" stop: 0.6 #434343, stop:1 #656565);"
" color: white;"
" padding-left: 4px;"
" border: 1px solid #6c6c6c;"
"}" //<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< Remove '}'
"}");
this->setStyleSheet( QStackedWidget QWidget#page { " //<<<<<<<< Remove '{'
" QHeaderView::section {"
" background-color: qlineargradient(x1:0, y1:0, x2:0, y2:1,"
" stop:0 #616161, stop: 0.5 #505050,"
" stop: 0.6 #434343, stop:1 #656565);"
" color: white;"
" padding-left: 4px;"
" border: 1px solid #6c6c6c;"
"}" //<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< Remove '}'
"}");
To copy to clipboard, switch view to plain text mode
How are you creating the Ui
1. If you are using the designer, then make sure the QWidget's name is correct and the stylesheet is applied to a containing widget.
2. If you are creatig the using code, even then make sure the QWidget's name is correct.
The folloing code works on my windows
Qt Code:
Switch view
#include <QtGui>
#include <QApplication>
{
tableWidget->setObjectName(name);
tableWidget->setRowCount(10);
tableWidget->setColumnCount(10);
return tableWidget;
}
int main(int argc, char *argv[])
{
stackedWidget.showMaximized();
stackedWidget.addWidget(createPage("Page1"));
stackedWidget.addWidget(createPage("Page2"));
stackedWidget.setStyleSheet(
"QStackedWidget QTableWidget#Page1 QHeaderView::section {"
" background-color: qlineargradient(x1:0, y1:0, x2:0, y2:1,"
" stop:0 #616161, stop: 0.5 #505050,"
" stop: 0.6 #434343, stop:1 #656565);"
" color: white;"
" padding-left: 4px;"
" border: 1px solid #6c6c6c;"
"}"
"QStackedWidget QTableWidget#Page2 QHeaderView::section {"
" background-color: qlineargradient(x1:0, y1:0, x2:1, y2:1,"
" stop:0 #red, stop: 0.5 #green,"
" stop: 0.6 #green, stop:1 #pink);"
" color: white;"
" padding-left: 4px;"
" border: 1px solid #bule;"
"}");
stackedWidget.setCurrentIndex(0);
// stackedWidget.setCurrentIndex(1);
return app.exec();
}
#include <QtGui>
#include <QApplication>
QWidget * createPage(const QString & name)
QTableWidget * tableWidget = new QTableWidget;
tableWidget->setObjectName(name);
tableWidget->setRowCount(10);
tableWidget->setColumnCount(10);
return tableWidget;
int main(int argc, char *argv[])
QApplication app(argc, argv);
QStackedWidget stackedWidget;
stackedWidget.showMaximized();
stackedWidget.addWidget(createPage("Page1"));
stackedWidget.addWidget(createPage("Page2"));
stackedWidget.setStyleSheet(
"QStackedWidget QTableWidget#Page1 QHeaderView::section {"
" background-color: qlineargradient(x1:0, y1:0, x2:0, y2:1,"
" stop:0 #616161, stop: 0.5 #505050,"
" stop: 0.6 #434343, stop:1 #656565);"
" color: white;"
" padding-left: 4px;"
" border: 1px solid #6c6c6c;"
"QStackedWidget QTableWidget#Page2 QHeaderView::section {"
" background-color: qlineargradient(x1:0, y1:0, x2:1, y2:1,"
" stop:0 #red, stop: 0.5 #green,"
" stop: 0.6 #green, stop:1 #pink);"
" color: white;"
" padding-left: 4px;"
" border: 1px solid #bule;"
"}");
stackedWidget.setCurrentIndex(0);
// stackedWidget.setCurrentIndex(1);
return app.exec();
To copy to clipboard, switch view to plain text mode
If still it does not work, you better post a small compilable code with the problem