本文将实现每个窗口中的三个按钮在鼠标滑入时显示,在鼠标离开时隐藏,同时完成了十字线联动的开关。
电梯
1 演示效果
/** * @brief enterEvent * 鼠标进入事件 * @param event */ void enterEvent(QEvent *event); /** * @brief leaveEvent * 鼠标离开事件 * @param event */ void leaveEvent(QEvent *event);
2.2 实现
void VTKRenderWidget::enterEvent(QEvent *event) { Q_UNUSED(event) ui->pushButton_1->show(); ui->pushButton_2->show(); ui->pushButton_3->show(); } void VTKRenderWidget::leaveEvent(QEvent *event) { Q_UNUSED(event) ui->pushButton_1->hide(); ui->pushButton_2->hide(); ui->pushButton_3->hide(); }
3 十字线显隐
这个暂时还未理解,仅仅是指实现。这里还有点小BUG,不过不印象使用了
void ImageManage::SetResliceMode() { if(riw[0]->GetResliceMode()) { for (int i = 0; i < 3; i++) { riw[i]->SetResliceMode(0); riw[i]->GetRenderer()->ResetCamera(); riw[i]->Render(); } } else { for (int i = 0; i < 3; i++) { riw[i]->SetResliceMode(1); riw[i]->GetRenderer()->ResetCamera(); riw[i]->Render(); } } }