查看完整版本: [-- 部件注册到事件过滤器后不可见 --]

QTCN开发网 -> Qt基础编程 -> 部件注册到事件过滤器后不可见 [打印本页] 登录 -> 注册 -> 回复主题 -> 发表主题

ridewave 2009-07-12 17:45

部件注册到事件过滤器后不可见

pusnButton注册到事件过滤器后,运行程序后没有pushButton
如果删除ui->pushButton->installEventFilter(this);后则可见
程序为
MainWindow::MainWindow(QWidget *parent)
    : QMainWindow(parent), ui(new Ui::MainWindowClass)
{
    ui->setupUi(this);
    ui->pushButton->installEventFilter(this);

}

MainWindow::~MainWindow()
{
    delete ui;
}
bool MainWindow::eventFilter(QObject *target,QEvent *event)
{
    if(target= ui->pushButton)
    {
        if(event->type()==QEvent::MouseButtonPress

           )
        {
            QMouseEvent* mouseEvent = static_cast<QMouseEvent*>(event);
            if(mouseEvent->button()== Qt::LeftButton)
            {
                ui->pushButton->setText(tr("1"));
            }
        }
        return true;
    }

return QMainWindow::eventFilter(target,event);
}


请大侠们帮忙

shiroki 2009-07-13 17:23
唉,你还是好好看看blog里怎么写的吧
http://www.cuteqt.com/blog/?p=536


查看完整版本: [-- 部件注册到事件过滤器后不可见 --] [-- top --]



Powered by phpwind v8.7 Code ©2003-2011 phpwind
Gzip disabled