繁体   English   中英

QTabWidget:确定页面为QTableWidget

[英]QTabWidget: determine pages to be QTableWidget

我的Qt应用程序的MainWindow有QTabWidget,其中每个选项卡都是QTableWidget。 我需要访问当前表的选定单元格(使用currentRow()currentColumn() )。 但是当我用ui->tabWidget->currentWidget()来指向表时,结果是QWidget *所以因为它不存在像currentRow()这样的方法。

有没有办法确定QTabWidget的所有页面都是QTableWidget类的成员?

您可以使用qobject_cast来检查QObject类型的对象是否是从QObject继承的T类型的对象

QWidget *widget = ui->tabWidget->currentWidget();
QTableWidget *tableWidget = qobject_cast<QTableWidget*>(widget);
if (tableWidget != 0)
{
    /// Do work
}

顺便说一句,你可以在你的选项卡中获取所有QTableWidget

QList<QTableWidget *> allTables = ui->tabWidget->findChildren<QTableWidget *>();

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM