OnPaint()函数调用base.OnPaint()出现栈溢出
OnPaint()函数 private void OnPaint(object sender, PaintEventArgs e)
{
System.Drawing.Graphics g = this.CreateGraphics();
for (int x = 0; x < 15; x++)
{
for (int y = 0; y < 15; y++)
{
if (checkerBoard[y, x] != None) DrawChess(new Point(x, y), checkerBoard[y, x]);
}
}
ReDrawNextPlayerMark();
base.OnPaint(e);
}
private void ReDrawNextPlayerMark()
{
System.Drawing.Graphics g = this.CreateGraphics();
imageList1.Draw(g, 2, 309, 20, 20, Player);
}
{
System.Drawing.Graphics g = this.CreateGraphics();
for (int x = 0; x < 15; x++)
{
for (int y = 0; y < 15; y++)
{
if (checkerBoard[y, x] != None) DrawChess(new Point(x, y), checkerBoard[y, x]);
}
}
ReDrawNextPlayerMark();
base.OnPaint(e);
}
private void ReDrawNextPlayerMark()
{
System.Drawing.Graphics g = this.CreateGraphics();
imageList1.Draw(g, 2, 309, 20, 20, Player);
}
...全文
相关推荐
C#中 paint()与Onpaint()的区别
paint是事件onpaint方法onpaint方法是调用paint事件的,用哪一个,效果是一样,就看那一个方便了内部是这样实现的:
MFC扫雷实训全解析:从Windows消息机制到递归与INI存储
Windows桌面应用开发中,GUI框架的掌握往往从经典小游戏起步。MFC作为C++图形界面编程的常用框架,其消息映射、GDI绘图与资源管理机制,构成理解操作系统与应用程序交互的基石。数据结构设计则决定游戏逻辑的清晰度,例如用二维数组存储雷区状态,通过递归或显式栈实现空白格扩散,体现了算法与交互的紧密配合。工程化层面,INI配置文件负责持久化玩家记录,背景音乐与菜单响应则展示了多模块协同的典型模式。这类实训项目不仅巩固编程基础,更面向真实的桌面软件工程场景,帮助开发者建立从事件响应到界面刷新的完整认知。以扫
OnPaint()与OnDraw()的区别
OnPaint()与OnDraw()的区别
OnPaint()的工作原理
MFC中改变对话框背景的几个消息函数的调用顺序、VC中OnPaint()的工作原理.
MFC onPaint 实例 画图DIY
用 VC 6.0 写的一个小软件,很多功能还没有怎么添加 实现通过命令移动光标,在画板上面画线


