日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

MFC程序设计——标尺的例子

發布時間:2023/12/31 编程问答 44 豆豆
生活随笔 收集整理的這篇文章主要介紹了 MFC程序设计——标尺的例子 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

我們首先看一個例子:

頭文件:

//Ruler.h//CMyApp類代表應用程序本身,CMyApp::InitInstance通過構造CMainWindow對象創建一個主窗口; //而CMainWindow的構造函數通過Create創建了在屏幕上顯示的窗口;class CMyApp : public CWinApp { public:virtual BOOL InitInstance (); };class CMainWindow : public CFrameWnd { public:CMainWindow (); protected://CMainWindow::OnPaint()處理所有的畫圖任務afx_msg void OnPaint ();DECLARE_MESSAGE_MAP () };

源文件:

//Ruler.cpp #include <afxwin.h> #include "Ruler.h" CMyApp myApp; /////////////////////////////////////////////////////////// // CMyApp member functionsBOOL CMyApp::InitInstance () {m_pMainWnd = new CMainWindow;m_pMainWnd->ShowWindow (m_nCmdShow);m_pMainWnd->UpdateWindow ();return TRUE; }/////////////////////////////////////////////////////////// // CMainWindow消息映射以及成員函數BEGIN_MESSAGE_MAP (CMainWindow, CFrameWnd)ON_WM_PAINT () END_MESSAGE_MAP ()CMainWindow::CMainWindow () {Create (NULL, _T ("Ruler")); }void CMainWindow::OnPaint () {CPaintDC dc (this); //初始化設備描述表//設置映射模式dc.SetMapMode (MM_LOENGLISH);//設置設備描述表的屬性dc.SetTextAlign (TA_CENTER | TA_BOTTOM); //設置背景模式,透明dc.SetBkMode (TRANSPARENT);// 畫標尺的主體//黃色的畫刷被選為設備描述表CBrush brush (RGB (255, 255, 0));CBrush* pOldBrush = dc.SelectObject (&brush);dc.Rectangle (100, -100, 1300, -200);dc.SelectObject (pOldBrush);//// 畫散列的刻度線//for (int i=125; i<1300; i+=25) {dc.MoveTo (i, -192);dc.LineTo (i, -200);}for (int i=150; i<1300; i+=50) {dc.MoveTo (i, -184);dc.LineTo (i, -200);}for (int i=200; i<1300; i+=100) {dc.MoveTo (i, -175);dc.LineTo (i, -200);//CDC::TextOut畫出數字標注CString string;string.Format (_T ("%d"), (i / 100) - 1);dc.TextOut (i, -175, string);} }

注:C語言中的%d代表整型

標尺的應用程序沒有采用把要傳遞給TextOut的字符串硬編碼的方法,而是調用了CString::Format 生成標尺上的文本,CString是描述文本字符串的MFC類,對于CString對象而言,Format就能完成文本格式化,而不調用其它的外部函數。

總結

以上是生活随笔為你收集整理的MFC程序设计——标尺的例子的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。