`
hulianwang2014
  • 浏览: 694218 次
文章分类
社区版块
存档分类
最新评论
  • bcworld: 排版成这样,一点看的欲望都没有了
    jfinal

让控制台漂亮一点

 
阅读更多
发个老外写的操作控制台背景颜色的头文件
  1. //ConsoleColor.h
  2. #pragmaonce
  3. #include<iostream>
  4. #include<windows.h>
  5. inlinestd::ostream&blue(std::ostream&s)
  6. {
  7. HANDLEhStdout=GetStdHandle(STD_OUTPUT_HANDLE);
  8. SetConsoleTextAttribute(hStdout,FOREGROUND_BLUE
  9. |FOREGROUND_GREEN|FOREGROUND_INTENSITY);
  10. returns;
  11. }
  12. inlinestd::ostream&red(std::ostream&s)
  13. {
  14. HANDLEhStdout=GetStdHandle(STD_OUTPUT_HANDLE);
  15. SetConsoleTextAttribute(hStdout,
  16. FOREGROUND_RED|FOREGROUND_INTENSITY);
  17. returns;
  18. }
  19. inlinestd::ostream&green(std::ostream&s)
  20. {
  21. HANDLEhStdout=GetStdHandle(STD_OUTPUT_HANDLE);
  22. SetConsoleTextAttribute(hStdout,
  23. FOREGROUND_GREEN|FOREGROUND_INTENSITY);
  24. returns;
  25. }
  26. inlinestd::ostream&yellow(std::ostream&s)
  27. {
  28. HANDLEhStdout=GetStdHandle(STD_OUTPUT_HANDLE);
  29. SetConsoleTextAttribute(hStdout,
  30. FOREGROUND_GREEN|FOREGROUND_RED|FOREGROUND_INTENSITY);
  31. returns;
  32. }
  33. inlinestd::ostream&white(std::ostream&s)
  34. {
  35. HANDLEhStdout=GetStdHandle(STD_OUTPUT_HANDLE);
  36. SetConsoleTextAttribute(hStdout,
  37. FOREGROUND_RED|FOREGROUND_GREEN|FOREGROUND_BLUE);
  38. returns;
  39. }
  40. structcolor{
  41. color(WORDattribute):m_color(attribute){};
  42. WORDm_color;
  43. };
  44. template<class_Elem,class_Traits>
  45. std::basic_ostream<_Elem,_Traits>&
  46. operator<<(std::basic_ostream<_Elem,_Traits>&i,color&c)
  47. {
  48. HANDLEhStdout=GetStdHandle(STD_OUTPUT_HANDLE);
  49. SetConsoleTextAttribute(hStdout,c.m_color);
  50. returni;
  51. }
测试代码:
  1. #include<iostream>
  2. #include"ConsoleColor.h"
  3. usingnamespacestd;
  4. intmain()
  5. {
  6. cout<<green<<"Thistextiswritteningreen"
  7. <<white<<std::endl;
  8. cout<<color(FOREGROUND_RED|FOREGROUND_GREEN)
  9. <<"Thistexthasareallyexitingcolor!"
  10. <<white<<std::endl;
  11. return0;
  12. }

另外也可以运用system函数加dos命令来改变控制台的情况,如:
  1. system("titlename");
  2. system("color2f");
  3. system("...");
纯属娱乐
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics