我有QListWidget
,其中我添加了少量QListWidgetItem
个文字。
其中一些项目必须在最右边的可见位置使用右三角(使用unicode)。
有没有什么方法可以计算出最右边的可见角色的位置,这样我就可以在右边的三角形之间插入空格了?
如果有动态的方式来了解这些信息,那就太好了。 因为这个列表不是静态的,它根据组合框中的变化而改变...所以有时可能会有滚动条,有时不会。
答案 0 :(得分:0)
例如:
ui->listWidget->addItem(("▶ text"));
QString st = ui->listWidget->item(0)->text();//just get text from item
int pos = st.indexOf("▶");//find position
if(pos == -1)
qDebug() << "this iten doesn't have this symbol";
//st.insert(pos,"A");//now you have position, you can insert what you want
ui->listWidget->item(0)->setText(st);//set text back to the item
这是一个例子,所以也许您需要调整此代码。
要动态执行此操作,您可以使用信号/插槽机制。 QComboBox
有很好的信号:currentIndexChanged ( const QString & text )