设为首页 加入收藏

TOP

3.4.2 具体实现(9)
2013-10-07 15:56:16 来源: 作者: 【 】 浏览:79
Tags:3.4.2 具体 实现

3.4.2  具体实现(9)

  1. }  
  2. else  
  3. {  
  4. ColorVal = atoi(tempStr2);  
  5. tempStr2.Empty();  
  6. }  
  7. //获得一个值  
  8. //改变前景颜色,这个颜色可以按照一定的规则自定义  
  9. if (ColorVal>29 && ColorVal<38)  
  10. //cTextColor = RGB(0,0,255);  
  11. //设置背景颜色  
  12. if (ColorVal>39 && ColorVal<48)  
  13. //cBackgroundColor = RGB(0,255,ColorVal);  
  14. //恢复基本设置  
  15. if (ColorVal==0)  
  16. {  
  17. //cBackgroundColor = RGB(0,0,0);  
  18. //cTextColor = RGB(255,255,255);  
  19. }  
  20. //如果为1,则设置前景色  
  21. //if ColorVal==1  
  22. //表示要反色  
  23. //if ColorVal==7  
  24. }  
  25. }  
  26. //如果为字符K,表示要画一条背景色的矩形区域  
  27. if (pText[loop] == 'K')  
  28. {  
  29. int x, y;  
  30. CString myStr;  
  31. //保持原来的坐标  
  32. //画出矩形区域,因为以背景色画,所以相当于移动光标  
  33. //将坐标变量改变到目前的位置  
  34. x = CurrentXX;  
  35. y = CurrentYY;  
  36. for (int l=CurrentXX; l<80; l++)  
  37. {  
  38. cText[l][CurrentYY] = ' ';  
  39. myStr += ' ';  
  40. }  
  41. pDC->TextOut(x*dtX, y*dtY, myStr);  
  42. CurrentXX = x;  
  43. CurrentYY = y;  
  44. }  
  45. //如果字符为C,表示要改变当前的横坐标  
  46. if (pText[loop] == 'C')  
  47. {  
  48. //获得横坐标的改变量  
  49. if (tempStr2.Find(";") != -1)  
  50. {  
  51. ColorVal = atoi(tempStr2.Mid(0, tempStr2.Find(";")));  
  52. tempStr2tempStr2 = tempStr2.Mid(tempStr2.Find(";") + 1);  
  53. }  
  54. else  
  55. {  
  56. ColorVal = atoi(tempStr2);  
  57. tempStr2.Empty();  
  58. }  
  59. //然后增建坐标值,注意这里要加上字符宽度  
  60. CurrentXXCurrentXX = CurrentXX + ColorVal;  
  61. }  
  62. //如果字符为H,表示重新设置横坐标和纵坐标  
  63. if (pText[loop] == 'H')  
  64. {  
  65. //获得纵坐标值,在服务器发送的过程中,先发送纵坐标值  
  66. TRACE0("H");  
  67. int tX=0tY=0;  
  68. //char buffer3[20];  
  69. tY = atoi(tempStr2.Mid(0, tempStr2.Find(";")));  
  70. tempStr2tempStr2 = tempStr2.Mid(tempStr2.Find(";") + 1);  
  71. //获得横坐标值,注意这里获得的值是没有加字符宽度的  
  72. tX = atoi(tempStr2);  
  73. if (tX>0 && tY>0)  
  74. {  
  75. CurrentYY = tY - 1;  
  76. CurrentXX = tX - 1;  
  77. }  
  78. }  
  79. //如果为字符J,表示要清除整个屏幕  
  80. if (pText[loop] == 'J')  
  81. {  
  82. ClearWindows(pDC);  
  83. }  
  84. }  
  85. loop++;  
  86. IfOutput = false;  
  87. break;  
  88.  
  89. case 0:  
  90. loop++;  
  91.  
  92. case 10: //换行  
  93. {  
  94. CurrentYYCurrentYY = CurrentYY + 1;  
  95. if (CurrentYY >= bufferLines)  
  96. {  
  97. for(int row=0; row<bufferLines; row++)  
  98. {  
  99. for(int  col=0; col<80; col++)  
  100. {  
  101. cText[col][row] = cText[col][row+1];  
  102. }  
  103. }  
  104. for(int  col=0; col<80; col++)  

】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇3.4.2 具体实现(8) 下一篇3.4.2 具体实现(10)

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容:

·工业机器人TCP校准中 (2025-12-25 05:19:17)
·opc 通讯协议与 TCP (2025-12-25 05:19:15)
·labview中tcp/ip通信 (2025-12-25 05:19:13)
·新书介绍《Python数 (2025-12-25 04:49:47)
·怎么利用 Python 进 (2025-12-25 04:49:45)