【发布时间】:2012-01-30 19:34:56
【问题描述】:
我正在尝试创建一个命令类层次结构。基本上每个命令都将绑定到一个 QAction。一旦动作被触发,它就会调用一个虚方法。
代码如下:
class Command : QObject
{
Q_OBJECT
public:
Command(QWidget *parent);
public slots:
virtual void execute();
protected:
QAction *commandAct;
};
Command::Command(QWidget *parent)
{
commandAct = new QAction(parent);
parent->addAction(commandAct);
connect(commandAct,SIGNAL(triggered()),this,SLOT(execute()));
}
QAction *Command::getAction()
{
return commandAct;
}
现在如果我派生一个类并重写执行方法,它会像它应该的那样被调用吗?
我需要这个才能跨平台工作。
【问题讨论】: