CustomMessageDlg.cpp 1.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061
  1. #include "CustomMessageDlg.h"
  2. #include "ui_CustomMessageDlg.h"
  3. CustomMessageDlg::CustomMessageDlg(QWidget *parent)
  4. : QDialog(parent)
  5. , ui(new Ui::CustomMessageDlg)
  6. {
  7. ui->setupUi(this);
  8. this->setWindowFlags(Qt::WindowStaysOnTopHint | Qt::FramelessWindowHint | Qt::Dialog);
  9. }
  10. CustomMessageDlg::~CustomMessageDlg()
  11. {
  12. delete ui;
  13. }
  14. void CustomMessageDlg::RunMsgWnd(const ns_module::ST_BUTTON_DONE& butDone)
  15. {
  16. }
  17. void CustomMessageDlg::mousePressEvent(QMouseEvent* event)
  18. {
  19. if(event->button() == Qt::LeftButton && event->pos().y() <= 48)
  20. {
  21. m_isTitleBarClicked = true;
  22. m_dragPosition = event->globalPos() - frameGeometry().topLeft();
  23. event->accept();
  24. }
  25. else
  26. {
  27. m_isTitleBarClicked = false;
  28. QDialog::mousePressEvent(event);
  29. }
  30. }
  31. void CustomMessageDlg::mouseMoveEvent(QMouseEvent* event)
  32. {
  33. if(m_isTitleBarClicked && (event->buttons() & Qt::LeftButton))
  34. {
  35. move(event->globalPos() - m_dragPosition);
  36. event->accept();
  37. }
  38. else
  39. {
  40. QDialog::mouseMoveEvent(event);
  41. }
  42. }
  43. void CustomMessageDlg::on_tCloseBut_clicked()
  44. {
  45. on_closeBut_clicked(); // TODO: 都交给它
  46. }
  47. void CustomMessageDlg::on_closeBut_clicked()
  48. {
  49. this->close();
  50. }