我有一个带有2个选项卡的QTabWidget,我将每个选项卡提升为2个自定义小部件。这些小部件具有"typeName()“和"baseName()”函数,但我不能使用"QTabwidget->currentWidget()“访问这些函数。
std::string type = ui->tabWidget->currentWidget()->typeName().toUtf8().constData();
std::string base = ui->tabWidget->currentWidget()->baseName().toUtf8().constData();这会抛出一个错误“它没有成员名.”
我做错了什么?
发布于 2013-08-14 13:13:28
您需要对选项卡中的特定类型进行显式(向下)强制转换。这些函数不存在于由QWidget ()返回的基类currentWidget中。
std::string type = dynamic_cast<CustomType*>(ui->tabWidget->currentWidget())->typeName().toUtf8().constData();https://stackoverflow.com/questions/18232598
复制相似问题