永发信息网

请问在visual c++环境下画点的函数是哪个?

答案:2  悬赏:10  手机版
解决时间 2021-11-08 12:51
请问在visual c++环境下画点的函数是哪个?
最佳答案
在vc中使用SetPixel()函数来画点,SetPixel函数说明:
函数功能:该函数将指定坐标处的像素设为指定的颜色。
COLORREF SetPixel(HDC hdc, int X, int Y, COLORREF crColor);
参数
hdc
设备环境句柄。
X
指定要设置的点的X轴坐标,按逻辑单位表示坐标。
Y
指定要设置的点的Y轴坐标,按逻辑单位表示坐标。
crColor
指定要用来绘制该点的颜色。
返回值
如果函数执行成功,那么返回值就是函数设置像素的RGB颜色值。这个值可能与crColor指定的颜色有所不同,之所以有时发生这种情况是因为没有找到对指定颜色进行真正匹配造成的。
如果函数失败,那么返回值是-1。
Windows NT:若想获得更多的 错误信息,请调用GetLastError函数。
备注
如果像素点坐标位于当前剪辑区之外,那么该函数执行失败。
不是所有设备都支持SetPixel函数。有关详情,请参考 GetDeviceCaps。


使用SetPixel函数画点只改变一个像素,分辨率高时很不明显,可以使用MoveTo和LineTo函数,先通过CreatePen设置Pen,把Pan调整到需要的大小,然后通过MoveTo(x,y); LineTo(x,y);绘制即可。示例代码如下:
HDC hdc;//设备场景DC
PAINTSTRUCT ps;
HEPN hPen;
hdc = BeginPaint( hWnd , &ps );
hPen = CreatePen( PS_SOLID , 3 , RGB( 255, 0, 0 ));
MoveTo( hdc, 100, 100);
LineTo( hdc, 100, 100);
SelectObject (hdc, hOldPen);
DeleteObject ( hPen );
EndPaint ( hWnd, &ps );
全部回答
在vc中我都是用SetPixel()来画点的

不过画出来的点太小了,不容易辨认

我想把点画的大一些,有没有好的办法

我曾经用过这样的方法,不过感觉比较麻烦

先选Pen,将Pen的粗细程度改大一点,如5,8,10等等

如果想在(100,100)画点的话,就可以用下面的语句实现

MoveTo(100,100);

LineTo(100,100);
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
AMD里45W和65W的CPU是不是真的就是差20W?
央视文静的老公是谁
放款没有借贷行吗
建筑结构图中梁标注为KLL是什么意思
他准确地把球踢到远处的水桶里. (让句子变简
大便韩语怎么说怎么读
宝杨码头到嘉定北怎样走路线最快
大连亲子鉴定所地址
dw手表为什么有几百块的
夏天屁股臭怎么办
路飞到底是超人系还是自然系
丽江摩托车科目一考试中心地址在什么地方,想
马克吐温与赫威尔去春游,出门时遇大雨。赫威
若负5x的m方y的3+n次方与2分之1x的2次方y是同
paranenic怎么连接机顶盒
推荐资讯
凤翔吉祥机动车驾驶培训有限公司地址有知道的
我家锅锅 汤锅好不好,汤锅哪个牌子好
上能浇禾苗、下能长禾苗、上下相结合、响声震
怎么才能和父亲舒服的相处呢?
汉中市车管所网办中心地址有知道的么?有点事
北京雅讯科技有限公司怎么样?
シルエットknonboon歌词罗马音完整版
百粮春二星 金星 的价格是多少钱一箱?
想问一下森林人开起来感觉如何,会不会感觉到
用来判断干燥的铜绿受热发生化学变化的根本依
西方有骑士,古代中国有没有类似的。斗将和骠
ppt里转换成任意多边形怎样编辑顶点
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?