在Qt网站在QHeaderView类中上,我发现了两个具有类似描述的信号:
void QHeaderView::sectionDoubleClicked(int logicalIndex)和
void QHeaderView::sectionHandleDoubleClicked(int logicalIndex)这两个有什么区别?我什么时候应该使用第一种,什么时候使用另一种?
发布于 2022-02-16 13:16:46
尽管文档字符串完全相同,
void QHeaderView::sectionDoubleClicked(int logicalIndex)这个信号是在双击部分时发出的.该节的逻辑索引由logicalIndex指定。[signal]void QHeaderView::sectionHandleDoubleClicked(int logicalIndex)这个信号是在双击部分时发出的.该节的逻辑索引由logicalIndex指定。
信号是在不同情况下发出的信号。来自KDE Qt5副本,
void QHeaderView::mouseDoubleClickEvent(QMouseEvent *e)
{
...
int handle = d->sectionHandleAt(pos);
if (handle > -1 && sectionResizeMode(handle) == Interactive) {
emit sectionHandleDoubleClicked(handle);
...
} else {
emit sectionDoubleClicked(logicalIndexAt(e->position().toPoint()));
}
}然而,文档并没有特别清楚地说明“句柄”何时出现,何时不存在。据猜测,如果您的区段可调整大小,您可能会得到一个句柄--用于调整大小--然后您可以(双)单击句柄或部分主体。
https://stackoverflow.com/questions/71142279
复制相似问题