0

在我的状态栏中,我添加了一个QLabel在其中显示一些消息的状态。现在我想要的是当我点击那个QLabel(出现在里面QStatusBar)时,消息应该消失..

我在状态栏中添加了如下标签:

QLabel *cpyrightlbl= new QLabel();
ui.statusBar->addWidget(cpyrightlbl);
cpyrightlbl->setText("Demo Message");
cpyrightlbl->setStyleSheet("border: 3px");
cpyrightlbl->setFixedWidth(frameGeometry().width());
cpyrightlbl->show();
4

1 回答 1

1

您应该创建自己的类,该类派生自QLabel该函数,然后重新实现该函数QLabel::mousePressEvent ( QMouseEvent * ev )

void CMyLabel::mousePressEvent( QMouseEvent * ev )
{
    if( ev->button() == Qt::LeftButton )
    {
        this->clear();
        // or
        // this->setText( "" );
    }

    QLabel::mousePressEvent( ev );
}
于 2012-07-12T05:34:06.950 回答