程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 更多編程語言 >> 編程綜合問答 >> 孫鑫-Visual C++的一段代碼搞不懂求解釋

孫鑫-Visual C++的一段代碼搞不懂求解釋

編輯:編程綜合問答
Visual C++的一段代碼搞不懂求解釋

說一下自己的理解。題目是孫鑫老是的文本輸出的例子。
1:GetBkColor得到背景白色,然後SetTextColor(白色)把背景白色設置為文字顏色。跟著clr應該是賦值得到白色了吧,但是F5看的時候是黑色,就要原文字顏色。我這麼理解應該錯了
1 COLORREF clr=dc.SetTextColor(dc.GetBkColor());
//GetBkColor屬於dc對象,改變dc中的背景值(白色)。然後SetTextColor用白色值設置了dc文字的顏色。
問題賦值給clr是什麼?為什麼是0(黑色)好像等號的左右兩邊沒有任何關系。
2 dc.TextOut(m_ptOrigin.x,m_ptOrigin.y,m_strLine);//用背景色輸出了文字,等於沒看不到。
3 m_strLine=m_strLine.Left(m_strLine.GetLength()-1);//不用解釋,理解。
4 dc.SetTextColor(clr);//這裡這個函數用clr的0,把文字顏色設置為黑色。當麼語句1應該是白色給了clr。
問題主要在語句1和4.

求幫忙,謝謝哪位大叔給個解釋
http://msdn.microsoft.com/zh-cn/library/wf4k5sew.aspx這個上面的我還是沒能看明白。不用給我地址了。

最佳回答:


要看SetTextColor是如何定義的,它返回的應該是 COLORREF 類型的變量,而且返回的是dc中改變之前的TextColor。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved