LAPTOP-SNT8I5JK\Boounion
2025-01-04 45b6a68910e1d7c7c9e1396a86cd9c2d804cab8c
SourceCode/Bond/Servo/ServoDlg.cpp
@@ -6,6 +6,8 @@
#include "Servo.h"
#include "ServoDlg.h"
#include "afxdialogex.h"
#include "Common.h"
#ifdef _DEBUG
#define new DEBUG_NEW
@@ -68,7 +70,7 @@
   : CDialogEx(IDD_SERVO_DIALOG, pParent)
{
   m_hIcon = AfxGetApp()->LoadIcon(IDR_MAINFRAME);
   m_crBkgnd = RGB(255, 255, 255);
   m_crBkgnd = APPDLG_BACKGROUND_COLOR;
   m_hbrBkgnd = nullptr;
   m_bShowLogWnd = FALSE;
}
@@ -88,6 +90,7 @@
   ON_WM_CTLCOLOR()
   ON_WM_DESTROY()
   ON_BN_CLICKED(IDC_BUTTON_LOG, &CServoDlg::OnBnClickedButtonLog)
   ON_WM_SIZE()
END_MESSAGE_MAP()
@@ -203,6 +206,8 @@
   m_pGraph->SetBoxText(INDICATE_MEASUREMENT, "13", "Measurement");
   UpdateLogBtn();
   Resize();
   return TRUE;  // 除非将焦点设置到控件,否则返回 TRUE
}
@@ -298,10 +303,42 @@
void CServoDlg::OnBnClickedButtonLog()
{
   m_bShowLogWnd = !m_bShowLogWnd;
   m_btnLog.SetFrameColor(BS_NORMAL, BTN_JOG_FRAME_NORMAL);
   m_btnLog.SetFrameColor(BS_HOVER, BTN_JOG_FRAME_HOVER);
   m_btnLog.SetFrameColor(BS_PRESS, BTN_JOG_FRAME_PRESS);
   m_btnLog.SetBkgndColor(BS_NORMAL, BTN_JOG_BKGND_NORMAL);
   m_btnLog.SetBkgndColor(BS_HOVER, BTN_JOG_BKGND_HOVER);
   m_btnLog.SetBkgndColor(BS_PRESS, BTN_JOG_BKGND_PRESS);
   UpdateLogBtn();
}
void CServoDlg::UpdateLogBtn()
{
   m_btnLog.SetFrameColor(BS_NORMAL, BTN_LOG_FRAME_NORMAL);
   m_btnLog.SetFrameColor(BS_HOVER, BTN_LOG_FRAME_HOVER);
   m_btnLog.SetFrameColor(BS_PRESS, BTN_LOG_FRAME_PRESS);
   m_btnLog.SetBkgndColor(BS_NORMAL, m_bShowLogWnd ? BTN_LOG_BKGND_PRESS : BTN_LOG_BKGND_NORMAL);
   m_btnLog.SetBkgndColor(BS_HOVER, BTN_LOG_BKGND_HOVER);
   m_btnLog.SetBkgndColor(BS_PRESS, BTN_LOG_BKGND_PRESS);
}
void CServoDlg::OnSize(UINT nType, int cx, int cy)
{
   CDialogEx::OnSize(nType, cx, cy);
   if (GetDlgItem(IDC_SERVO_GRAPH1) == nullptr) return;
   Resize();
}
void CServoDlg::Resize()
{
   CRect rcClient, rcItem;
   CWnd* pItem = nullptr;
   int x, y;
   x = 0;
   y = 0;
   pItem = GetDlgItem(IDC_SERVO_GRAPH1);
   pItem->GetClientRect(&rcItem);
   pItem->MoveWindow(x, y, rcItem.Width(), rcItem.Height());
   y += rcItem.Height();
   y += 8;
   x = 8;
   pItem = GetDlgItem(IDC_BUTTON_LOG);
   pItem->GetClientRect(&rcItem);
   pItem->MoveWindow(x, y, rcItem.Width(), rcItem.Height());
}