孙鑫-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、4的语句,特别是1的语句什么意思。感觉赋值,和后面的调用颜色好像没有关系。

时间: 2024-08-03 06:15:03

孙鑫-Visual C++的一段代码搞不懂求解释的相关文章

whitespace-这段代码什么意思求解释

问题描述 这段代码什么意思求解释 #include #include #include #include //Constants #define LINELENGTH 100 // Function prototypes void reverse_words(char* words[], char* rwords[], int count); void print_words(char* words[]); int mark_words(char* line, char* words[]); /

java web-这段代码看不懂啊,求解释

问题描述 这段代码看不懂啊,求解释 /s:iterator /s:iterator/sx:treenode/s:iterator </sx:treenode> </s:iterator> </sx:treenode> </s:iterator> 解决方案 <sx:tree label="%{#request.project.projectName}" id="parentId" > //项目名 <s:

printf-为什么这一小段代码总是运行时错误 求大家帮帮忙

问题描述 为什么这一小段代码总是运行时错误 求大家帮帮忙 #include<stdio.h>#include<string.h>int main(){ int t; scanf(""%d""&t); while(t--) { int n; scanf(""%d""&n); while(n--) { char a[]="">+""; char

html-HTML中 一段 代码,不懂

问题描述 HTML中 一段 代码,不懂 注意,这是写在 HTML文件中的,不是jsp. 解决方案 java生成静态html的一段代码一段消除HTML标签格式的代码如果在HTML中重复调用一段导航代码 解决方案二: 第一句话的意思是: 这一段存放了一个模板.在js里面,经常需要使用js往页面中插入html内容.比如这样: var number = 123; $('#d').append('<div class="t">'+number+'</div>') 如果ht

刚接触IO流有一段代码不理解求大神给我说明一下

问题描述 刚接触IO流有一段代码不理解求大神给我说明一下 红色框框标记的是不明白的. 再次表示感谢! 解决方案 Java 下 IO 中Reder 和 InputStream 分别是以字符和字节的形式来完成数据的读取的,然而返回值确是 int 类型的数据,这样做的核心目的只是要取到到一个 int 类型下的 -1 来表示数据流的末尾. 此次使用的read(b,0,512)是将文件中的数据读取到字节缓冲区b中,并返回读取到的字节的总数.循环读取文件内容到缓冲区,并写入另一个文件中.循环处理直到到达读取

c语言-求帮助写一个代码 刚学习数据结构 实在是搞不懂 求大神帮忙谢谢

问题描述 求帮助写一个代码 刚学习数据结构 实在是搞不懂 求大神帮忙谢谢 好心人帮忙翻译好了 求大神帮忙写一下代码 谢谢大家了 解决方案 你的需求,要至少4000C币,你给的100太少了 解决方案二: http://blog.csdn.net/qq_31766907/article/details/50331951这个链接,你看看,或许能帮到你.

java代码执行顺序求解释?

问题描述 java代码执行顺序求解释? public class ExA { private static ExA a = new ExA(); static { System.out.println("父类--静态代码块"); } public ExA() { System.out.println("父类--构造函数"); } { System.out.println("父类--非静态代码块"); } public static void ma

一段代码搞懂关于Java中List、Set集合及Map的使用_java

Java中List.Set集合及Map的使用代码如下所示: package tingjizifu; import java.util.*; public class TongJi { /* * 使用Scanner从控制台读取一个字符串,统计字符串中每个字符出现的次数,要求使用学习过的知识完成以上要求 * 实现思路根据Set.List.Map集合的特性完成. */ public static void main(String[] args) { // 输入字符串 Scanner input = n

瞅瞅 这段代码看不懂

问题描述 <th>转        诊</th><td><asp:RadioButtonListID="radlZHUANZHEN"runat="server"RepeatDirection="Horizontal"RepeatLayout="Flow"CssClass="easyui-validatebox"validtype="ctrl[['custo