主要是通過安裝過濾器,實(shí)現(xiàn)點(diǎn)擊事件。
事件過濾器的操作:
首先給需要添加事件過濾器的部件注冊監(jiān)聽對象;
對象名->installEventFilter(true);文章來源:http://www.zghlxwxcb.cn/news/detail-534546.html
重寫eventFilter(QObject *obj, QEvent *event)函數(shù)進(jìn)行處理。文章來源地址http://www.zghlxwxcb.cn/news/detail-534546.html
MainWindow::MainWindow(QWidget *parent)
: QMainWindow(parent)
, ui(new Ui::MainWindow)
{
ui->setupUi(this);
ui->label_LianJieDuXieQi->installEventFilter(this); //1.給label安裝事件過濾器
}
bool MainWindow::eventFilter(QObject *watched, QEvent *event)
{
if (watched == ui->label_LianJieDuXieQi) {//2.監(jiān)聽label
if (event->type() == QEvent::MouseButtonPress) {
qDebug()<<"1";
FuncOpenReader();
return true;
}
else {
return false;
}
}
else {
return QWidget::eventFilter(watched, event);
}
}
到了這里,關(guān)于QT學(xué)習(xí)12:QLabel實(shí)現(xiàn)點(diǎn)擊事件的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!