awqn_item.cpp 3.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116
  1. #include "awqn_item.h"
  2. #include "ui_awqn_item.h"
  3. #include "CAppInfo.h"
  4. #include "logproc.h"
  5. awqn_item::awqn_item(CSubQuestionStruct &sqs, QWidget *parent) :
  6. QWidget(parent),
  7. ui(new Ui::awqn_item), m_sqs(sqs)
  8. {
  9. ui->setupUi(this);
  10. setStyleSheet(g_appInfoPtr->m_sQssStr);
  11. ui->btn_awqn_quesion->setText(QString::number(sqs.nShowNumber));
  12. refreshStatus();
  13. }
  14. awqn_item::~awqn_item()
  15. {
  16. delete ui;
  17. }
  18. void awqn_item::setUI(int nX, int nY, int nWidth, int nHeight)
  19. {
  20. setGeometry(nX, nY, nWidth, nHeight);
  21. ui->btn_awqn_quesion->setGeometry(0, 0, width(), height());
  22. }
  23. void awqn_item::on_btn_awqn_quesion_clicked()
  24. {
  25. emit showSubQuestion(m_sqs.nOrder);
  26. }
  27. bool awqn_item::isMarked()
  28. {
  29. return m_sqs.bMarked;
  30. }
  31. bool awqn_item::isAnswered()
  32. {
  33. return m_sqs.bAnswered;
  34. }
  35. void awqn_item::refreshStatus()
  36. {
  37. QString sNormalStyle = QString(R"(QPushButton
  38. {
  39. outline:none;
  40. font-size:%1px;
  41. font-family:"Microsoft YaHei";
  42. font-weight:400;
  43. color:rgba(136,146,146,1);
  44. background:rgba(239,240,245,1);
  45. border:0px;
  46. border-radius:%2px;
  47. })").arg((int)(g_appInfoPtr->m_fRate*12)).arg((int)(g_appInfoPtr->m_fRate*15));
  48. QString sMarkedStyle = QString(R"(QPushButton
  49. {
  50. outline:none;
  51. font-size:%1px;
  52. font-family:"Microsoft YaHei";
  53. font-weight:400;
  54. color:rgba(255,255,255,1);
  55. background:rgba(255,159,67,1);
  56. border:0px solid rgba(255,159,67,1);
  57. border-radius:%2px;
  58. })").arg((int)(g_appInfoPtr->m_fRate*12))
  59. //.arg((int)(g_appInfoPtr->m_fRate*1 < 1 ? 1 : g_appInfoPtr->m_fRate*1))
  60. .arg((int)(g_appInfoPtr->m_fRate*15));
  61. QString sAnsweredStyle = QString(R"(QPushButton
  62. {
  63. outline:none;
  64. font-size:%1px;
  65. font-family:"Microsoft YaHei";
  66. font-weight:400;
  67. color:rgba(255,255,255,1);
  68. background:rgba(131,172,247,1);
  69. border:0px solid rgba(131,172,247,1);
  70. border-radius:%2px;
  71. })").arg((int)(g_appInfoPtr->m_fRate*12))
  72. // .arg((int)(g_appInfoPtr->m_fRate*1 < 1 ? 1 : g_appInfoPtr->m_fRate*1))
  73. .arg((int)(g_appInfoPtr->m_fRate*15));
  74. QString sCurrentStyle = QString(R"(QPushButton
  75. {
  76. outline:none;
  77. font-size:%1px;
  78. font-family:"Microsoft YaHei";
  79. font-weight:400;
  80. color:rgba(255,255,255,1);
  81. background:rgba(19,187,138,1);
  82. border:0px solid rgba(131,172,247,1);
  83. border-radius:%2px;
  84. })").arg((int)(g_appInfoPtr->m_fRate*12))
  85. .arg((int)(g_appInfoPtr->m_fRate*15));
  86. ui->btn_awqn_quesion->setStyleSheet(sNormalStyle);
  87. if(m_sqs.bAnswered)
  88. {
  89. ui->btn_awqn_quesion->setStyleSheet(sAnsweredStyle);
  90. }
  91. if(m_sqs.bMarked)
  92. {
  93. ui->btn_awqn_quesion->setStyleSheet(sMarkedStyle);
  94. }
  95. if(m_sqs.bCurrent)
  96. {
  97. ui->btn_awqn_quesion->setStyleSheet(sCurrentStyle);
  98. }
  99. }