我遇到了由QLineEdit's setFrame函数引起的奇怪行为。
在createLineEdit
我调用LineEdit的构造函数...
LineEdit* TreeWidget::createLineEdit()
{
LineEdit* l = new LineEdit;
item = new QTreeWidgetItem(this);
setItemWidget(item, 1, l);
addTopLevelItem(item);
return l;
}
...我删除了QLineEdit
的框架,默认设置为
LineEdit::LineEdit()
{
setReadOnly(true);
setFrame(false);
}
按预期移除帧,但行的突出显示被中断(见图片)LineEdit
。我的猜测是,这不是一个想要的行为。这是一个错误吗?我怎样才能解决这个问题?
谢谢
答案 0 :(得分:0)
你在其他任何东西之上展示了一个不透明的编辑器小部件。它应该按设计看起来那样。
如果您想要其他行为,则必须使窗口小部件的背景透明,并且只有在视图不抑制单元格背景的绘制时才会起作用。我不知道它是否有效。