在OnPaint()函数中定义

CPaintDC dc(GetDlgItem(IDC_STATIC3)); //用此句,得到picture控件的DC,图像将被绘制在控件上

	//画笔---CPen
	//画线
	//PS_SOLID:虚线,只有当画笔为1或者更小时才有效
	//10:线宽
	CPen pen(PS_SOLID,1,RGB(255,0,0));
	dc.SelectObject(&pen);
	dc.MoveTo(0,0);
	dc.LineTo(200,200);

	//画刷---CBrush
	//画圆
	dc.Ellipse(20,20,120,120);//直径为100
	//填充
	CBrush brush(RGB(255,0,0));
	dc.SelectObject(&brush);
	dc.Ellipse(20,20,120,120);

注意: 不要将实现代码放在if (IsIconic())语句下,因为IsIconic()作用是判断窗口是否处于最小化状态(点击了最小化按钮之后),一般将窗口最小化之后,才会执行里面的语句。放在else下。

设置按钮并移动线条
由于按钮按下一次程序就执行一次,所以只要定义一个全局变量x与y,在按钮命令中添加想要变化的量。
这样做不会擦除原来的线所以还要在按钮中添加刷新命令

CRect rectDlg;
int w2;
GetClientRect(rectDlg);//获得窗体的大小
w2 = rectDlg.Width();//取窗口宽度
RedrawWindow(CRect(0, 0, w2, 200));//重绘指定区域

以上参考
https://blog.csdn.net/wlzyan/article/details/88059280
https://blog.csdn.net/weixin_43197380/article/details/89547527


版权声明:本文为qq_42430540原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
原文链接:https://blog.csdn.net/qq_42430540/article/details/111463665