From 3404823d074a08b8c0824b505db16168f7e66201 Mon Sep 17 00:00:00 2001
From: LAPTOP-SNT8I5JK\Boounion <Chenluhua@qq.com>
Date: 星期一, 09 六月 2025 09:49:10 +0800
Subject: [PATCH] Merge branch 'clh'
---
SourceCode/Bond/Servo/ServoMemDC.h | 20 ++++++++++++++++++++
1 files changed, 20 insertions(+), 0 deletions(-)
diff --git a/SourceCode/Bond/Servo/ServoMemDC.h b/SourceCode/Bond/Servo/ServoMemDC.h
new file mode 100644
index 0000000..7717b1f
--- /dev/null
+++ b/SourceCode/Bond/Servo/ServoMemDC.h
@@ -0,0 +1,20 @@
+#pragma once
+#include <afxwin.h> // MFC 核心头文件
+
+// CServoMemDC:双缓冲绘图封装类(消除闪烁)
+class CServoMemDC : public CDC
+{
+public:
+ CServoMemDC(CDC* pDC, const CRect* pRect = nullptr); // 构造:传入目标 DC 和区域
+ ~CServoMemDC(); // 析构:自动拷贝到目标 DC
+
+ CServoMemDC* operator->();
+ operator CDC* ();
+
+private:
+ CBitmap m_bitmap; // 用于内存 DC 的位图
+ CBitmap* m_pOldBitmap; // 旧位图
+ CDC* m_pDC; // 原始绘图 DC(窗口)
+ CRect m_rect; // 绘图区域
+ BOOL m_bMemDC; // 是否启用了内存 DC(CreateCompatibleDC 成功)
+};
\ No newline at end of file
--
Gitblit v1.9.3