gpt4 book ai didi

qt - 如何将 rowCountChanged 连接到插槽

转载 作者:行者123 更新时间:2023-12-01 23:15:05 26 4
gpt4 key购买 nike

这是我倾向于设计的: 当 tablewidget 更改时(比如它的行数), 标签将显示行数。但是当我尝试时,Qtcreator 说: Object::connect:..\ui\mainwindow.cpp:55 中没有这样的信号 QTableWidget::rowCountChanged(int,int)

为什么? rowCountChanged(int, int) 是从 QTableView 继承的一个插槽,我认为...

谢谢

最佳答案

正如梅林所说,这是一个 protected 插槽。

但是您可以询问底层模型:

(因为widget继承自tableView,tableView继承自AbstractView)

QAbstractItemModel * QAbstractItemView::model () const

并连接到模型信号:

void QAbstractItemModel::rowsInserted ( const QModelIndex & parent, int start, int end ) [signal]
void QAbstractItemModel::rowsRemoved ( const QModelIndex & parent, int start, int end ) [signal]

Here您获得了所有模型信号

事实上,我还想探索另一种方法:

子类化 QTableWidget,(公共(public))您将有权访问该 protected 插槽。

因此,创建您自己的信号:

void YourTableWidget::rowCountChanged(int,int)
{
QTableWidget::rowCountChanged(int,int);
emit your_signal(...);

}

关于qt - 如何将 rowCountChanged 连接到插槽,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17814473/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com