最好能做到按个按钮还能变色,当然是不同的字变的色也不一样。

解决方案 »

  1.   

    如此色彩斑斓的text,
    只能自己定义窗口了,用DC去画不同颜色的字
    每个字都是一个结构,包括字母本身,颜色,坐标等等
      

  2.   

    设置字体代码如下:
    //设置阻值字体的显示
       LOGFONT lf;     
       CFont   font;   
       memset(&lf,0,sizeof(lf));   
       lf.lfHeight = 15;  
       lf.lfWeight = 0;    //可不设,默认   
       strcpy(lf.lfFaceName,"宋体") ;   
       font.CreateFontIndirect(&lf) ;
       //设置颜色
       pDLMemDC.SetTextColor(RGB(255,0,0));
       //设置背景为透明
       pDLMemDC.SetBkMode(TRANSPARENT);
       CFont *oldfont = pDLMemDC.SelectObject(&font);
    .
    .
    显示:pDLMemDC.TextOut
    ....
    pDLMemDC.SelectObject(oldfont);
     //删除字体
    font.DeleteObject();
    想软件出不现字体就多定义几种字体,当然也要多定义几组DC用不同的DC显示不同字串
    坐标关系算清楚就行了
      

  3.   

    只能自己画了,在输出之前伪代码如下:
    for(string中的字符未到最后)
    { 
       if(数字)
         选择字体,色彩,记得将其转成字符串:)呵呵,因为下面的TextOut要用到
         TextOut( ); 
         然后用GetTextExtent()测试目前输出到的位置,加到一个变量中去,作为下一次输出的开  始
      else一样的用法,最后记得释放对象,将字体和色彩恢复。
         }