在 QHeaderView 類的Qt doc 網站上,我發現了兩個具有相似描述的信號:
void QHeaderView::sectionDoubleClicked(int logicalIndex)
和
void QHeaderView::sectionHandleDoubleClicked(int logicalIndex)
這兩者有什么區別?我應該什么時候使用第一個,什么時候使用另一個?
uj5u.com熱心網友回復:
盡管檔案字串完全相同,
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://www.uj5u.com/qiye/425703.html
標籤:C qt qt5 qwidget qheaderview
