1

我正在制作一个自定义选项卡栏,它位于自定义选项卡小部件中。我希望根据 QTabPosition 采取某些行动。因此我有以下代码:

// get the parent tab widget
QTabWidget* pTabWidget = dynamic_cast<QTabWidget*>(parent());

QTabWidget::TabPosition tabpos = pTabWidget->tabPosition;

但是,这会导致编译器错误:

src/m-editor/octave-editor-tabbar.cc: In member function 'virtual void octave_editor_tabbar::paintEvent(QPaintEvent*)':
src/m-editor/octave-editor-tabbar.cc:69:50: error: cannot convert 'QTabWidget::tabPosition' from type 'QTabWidget::TabPosition (QTabWidget::)()const' to type 'QTabWidget::TabPosition'
 QTabWidget::TabPosition tabpos = pTabWidget->tabPosition;
                                              ^

父小部件是从 QTabWidget 派生的自定义小部件。

这里有什么问题?

4

1 回答 1

1

QTabWidget::tabPosition是一个带有 getter ( QTabWidget::tabPosition()) 和 setter ( QTabWidget::setTabPosition()) 的属性,您需要调用getter 方法才能读取它:

QTabWidget::TabPosition tabpos = pTabWidget->tabPosition();
                                                        ^^
于 2014-07-25T12:17:26.830 回答