我有两个系列的N个点,我想用两种不同的颜色来表示。在使用MFC CDC和CPen对象以及一堆CDC::MoveTo/CDC::LineTo调用时,我找不到任何明确说明执行此简单任务的最佳方法。
似乎每个设备上下文一次只能选择一个笔对象,所以我最好是选择一支笔,画一条线,选择另一支笔,画另一条线……或者浏览一下我的数据,在每个点上以某种方式在笔之间切换(或者连续选择每支笔,或者以某种方式改变笔的颜色)。
发布于 2010-08-18 11:25:15
我认为你最好的办法是按照你说的做,用第一支笔画出第一组N点,然后选择第二支笔,画第二组N点。
发布于 2010-08-18 11:37:57
一旦创建了钢笔颜色,就无法更改它。然而,您确实错过了一个选项,即用给定颜色的笔绘制给定颜色的所有段,然后切换笔并绘制另一种颜色的所有段。该选项可能不会提供相同的结果,因为两个线段的重叠将取决于先绘制哪一条线段。
尽管这看起来很不愉快,但我认为你最好的选择是为每种新的颜色更换钢笔,并按顺序检查这些点。
https://stackoverflow.com/questions/3508671
复制相似问题