0

我正在尝试向 QStandardItemModel 添加项目,所有这些项目都是 QStandardItem 类型。我想知道是否有办法将 QPushButton 附加到模型上。换句话说,它们是我可以更改以使其显示为按钮的 QStandardItem 的任何属性吗

4

1 回答 1

-1

使用样式表是您最好的选择。这是一个示例,我将 a 中的项目设置QListWidget为看起来像选项卡。稍加按摩可以让它看起来像一个按钮。

/* make the property editor list look like tabs */
QListWidget#PropertyEditor_List 
{ 
  background-color: Transparent; 
  padding-right: 0px; 
  padding-top: 2px; 
  padding-left: 2px; 
}
QListWidget#PropertyEditor_List::item 
{
  padding: 3px; 
  margin-left: 3px;
  background-color: qlineargradient(x1:0, y1:0, x2:1, y2:0, stop:0 white, stop:1 Transparent); 
  border-left: 1px solid rgb(145,155,155); 
  border-top: 1px solid rgb(145,155,155);
  border-bottom: 1px solid rgb(145,155,155);
  border-right: 0px;
  border-top-left-radius: 3px;
  border-bottom-left-radius: 3px;
}
QListWidget#PropertyEditor_List::item:hover, QListWidget#PropertyEditor_List::item:selected 
{ 
  background-color: qlineargradient(x1:0, y1:0, x2:1, y2:0, stop:0 rgb(255,200,60), stop:0.039 rgb(255,200,60), stop:0.04 white, stop:0.4 white, stop:1 Transparent); 
  border-left-color: rgb(230,139,44);
}
QListWidget#PropertyEditor_List::item:selected 
{ 
  margin-left: 0px;
  background-color: qlineargradient(x1:0, y1:0, x2:1, y2:0, stop:0 rgb(255,200,60), stop:0.039 rgb(255,200,60), stop:0.04 white);
  border-left-color: rgb(230,139,44);
  color: black;
}
于 2013-09-04T15:10:02.007 回答