做了好久界面程序,在绘制图形上一直都用MFC中CDC的方法。基本上可以满足现有的界面要求但是现在要做一个相对比较花哨的界面,颜色字体要有立体感,要非常美观。但我感觉用普通的绘图方法来实现还是比较困难的,如果强画上去效率可能也不高
一直知道openGL、directx、GDI+这些东西,但对于他们的特点不太了解。高手们可以给我讲解讲解吗?比如他们的特长在哪里?对资源的消耗如何?程序中如果使用需要引入什么东西,对程序的大小会不会增加很多?

解决方案 »

  1.   

    1 openGL、directx 是三维为主的,界面的功夫并不会因此而省略,相反更麻烦,不可取,除非你的显示内容主要是三维的内容。
    2 GDI+ 比GDI扩展了不少功能可以考虑
    3 你可以直接的使用图形的界面来实现啊,编程上的功夫同样也是少不了的
      

  2.   

    使用一下
    Codejock XTreme Toolkit Pro
      

  3.   

    Codejock XTreme Toolkit Pro
    要钱的吧
      

  4.   

    GDI+现在是1.0版,没用采用硬件加速,效率不太高。可能2.0出来就会好些了。如果只做一些几何制图,或平面设计,可以采用。
    opengl主要偏向于三维建模
    directx则是偏向于多媒体开发、游戏开发等。
      

  5.   

    第三方库我也考虑了,可是大多数的库都很大,我做一个比较小的程序,几兆,不想打入很大的界面库。至于一些绘图工具我接触不多,不知道哪些比较好用图片来展示界面是我现在使用的方法,但一样有问题。许多界面都是可以被伸缩的,用程序来绘制就可以根据大小来改变绘制的数据,看上去还是比较自然,可如果用图片的话就不是很好控制了,尤其是有立体效果或曲线的图片。还有,我想绘制出有动画的东西,比如图片的扭曲,字体的缩放效果。由于要动的东西是由程序产生的,用图片也不适宜。普通的GDI可能比较麻烦,所以想用另一种技术,却不知道哪个比较适合。
      

  6.   

    fool_leave () 你做过自绘的RadioButton控件吗?
    教教我好吗?
      

  7.   

    skinmagic
    立体字你可以把字写两遍,错开写,颜色相近
      

  8.   

    AlbortEinstein() 
    那些东西都是好早以前做过的,你到codeproject上面找一找吧,我也没有现成的happy__888([顾问团]寻开心) 
    很多人都说用flash插件来实现一些功能,听起来很神奇。但flash如何实现和父窗口的交互,能实现怎样的效果,我都没有概念,所以不太敢往这里想。有没有例子呢?或者目前有什么程序是用这种方式来实现的呢?thisisll(速度八十迈)
    skinmagic还是不方便,而且会让程序受限制