Padding-left在QListWidget中不起作用

时间:2015-01-21 18:15:13

标签: c++ qt padding qtstylesheets

我创建了QListWidget

QListWidget *list = new QListWidget();
list->addItem("Item 1");
list->addItem("Item 2");
list->addItem("Item 3");

然后我应用了我的样式表:

QListWidget::item {
    padding: 5px;
}

QListWidget::item:selected {
    background: qlineargradient(spread:pad, x1:0, y1:0, x2:0, y2:1, stop:0 #369, stop:1 #147);
    color: white;
}

但是padding没有在左侧工作。所以我有:

enter image description here

那么,我可以在QSS上创建左边距,而不是在C ++上创建左边距吗? 附:我试着写padding-left: 5px,但它也没有用 P.P.S.在QListWidget::item:selected填充正在运行。

1 个答案:

答案 0 :(得分:6)

尝试

/* Works for both QListView and QListWidget */
QListView::item {
    /* Won't work without borders set */
    border: 0px;

    padding-left: 10px;
}

/* For icon only */
QListView::icon {
    left: 10px;
}

/* For text only */
QListView::text {
    left: 10px;
}

不幸的是,我没有回答问题为什么没有边框设置它没有工作但是......当你设置它们时它会起作用。