C语言程序设计(郑莉)课后习题答案

内容发布更新时间 : 2025/7/16 19:43:36星期一 下面是文章的全部内容请认真阅读。

// 签名类成员函数

void CSignal::SetValue(CString signal, CPoint point, COLORREF color,

int escapement, LOGFONT *pfont) {

m_strSignal = signal; m_pointSignal = point; m_colorSignal = color;

memcpy(&m_fontSignal, pfont, sizeof(LOGFONT)); m_fontSignal.lfEscapement = escapement; }

// 显示签名

void CSignal::ShowSignal(CDC *pDC) {

CFont font, *pOldFont;

font.CreateFontIndirect(&m_fontSignal); pOldFont = pDC->SelectObject(&font); pDC->SetTextColor(m_colorSignal); pDC->TextOut(m_pointSignal.x, m_pointSignal.y,

m_strSignal);

pDC->SelectObject(pOldFont); }

// 框架窗口类 #define MAX_NAME 250

class CMyWnd: public CFrameWnd {

CSignal m_signalList[MAX_NAME]; // 签名数组 int m_nCount; // 签名数量

LOGFONT m_fontSignal; // 签名字体 COLORREF m_colorSignal; // 签名颜色 public: CMyWnd(); protected:

afx_msg void OnLButtonDown(UINT nFlags, CPoint point); afx_msg void OnRButtonDown(UINT nFlags, CPoint point); afx_msg void OnPaint(); DECLARE_MESSAGE_MAP() };

// 消息映射

BEGIN_MESSAGE_MAP(CMyWnd, CFrameWnd) ON_WM_LBUTTONDOWN() ON_WM_RBUTTONDOWN() ON_WM_PAINT() END_MESSAGE_MAP() // 框架窗口类的成员函数 CMyWnd::CMyWnd() {

m_nCount = 0;

m_colorSignal = RGB(0, 0, 0); m_fontSignal.lfHeight = 40; m_fontSignal.lfWidth = 0; m_fontSignal.lfEscapement = 0; m_fontSignal.lfOrientation = 0; m_fontSignal.lfWeight = 400; m_fontSignal.lfItalic = FALSE; m_fontSignal.lfUnderline = FALSE; m_fontSignal.lfStrikeOut = 0;

m_fontSignal.lfCharSet = OEM_CHARSET;

m_fontSignal.lfOutPrecision = OUT_DEFAULT_PRECIS; m_fontSignal.lfClipPrecision = CLIP_DEFAULT_PRECIS; m_fontSignal.lfQuality = DEFAULT_QUALITY; m_fontSignal.lfPitchAnd

>>展开全文<<
12@gma联系客服:779662525#qq.com(#替换为@) 苏ICP备20003344号-4 ceshi