QT 有关在子类中如何调用父类成员变量的问题
各位好:
我使用QT 创造了一个类如下(也就是一个窗体之中由一个按键):
//以下是.h
class showposition : public QMainWindow
{
Q_OBJECT
public:
showposition( QWidget* parent = 0, const char* name = 0, WFlags fl = WType_TopLevel );
~showposition();
QPushButton* showpicturebtn;//+++++++++++++++++++++++++窗体中就一个按键
protected:
protected slots:
private:
QPixmap image0;
};
//以下是.cpp构造函数
showposition::showposition( QWidget* parent, const char* name, WFlags fl )
: QMainWindow( parent, name, fl ),
image0( (const char **) image0_data )
{
showpicturebtn = new QPushButton( centralWidget(), "showpicturebtn" );
showpicturebtn- >setGeometry( QRect( 538, 569, 61, 22 ) );
// toolbars
resize( QSize(602, 700).expandedTo(minimumSizeHint()) );
clearWState( WState_Polished );
}
之后再创造一个子类如下:
//.h
class showpositionimp :public showposition
{
Q_OBJECT
public:
showpositionimp( QWidget* parent = 0, const char* name = 0, WFlags fl = WType_TopLevel );
~showpositionimp();
public slots:
virtual void picturebtclick();//++++++++++++++++++++++++++++++++这里定义了一个槽,也就是处理函数,处理按键的响应
};
//以下是.cpp构造函数
showpositionimp::showpositionimp( QWidget* parent, const char* name , WFlags fl )
:showposition(parent,name,fl)
{
connect( showpicturebtn, SIGNAL(clicked()),this, SLOT( picturebtclick()));//将其父类的按键(showpicturebtn)的clicked()信号和picturebtclick()槽连接.
}
但在编译时总是提示bool QObect::connect(const QObject *,const char* ,const QObject *,const char*),不能将参数1从"QPushButtin*"转换为"const QObject *" 与指向的类型无关.
不知为什么啊?子类在调用父类成员时,应该有什么要求啊?大家帮帮忙看看,感谢!