使用图形在面板内的面板上绘图.第一块面板比第二块大
本文关键字:一块 二块 绘图 图形 | 更新日期: 2023-09-27 18:04:14
我有两个面板:一个总是可见的,另一个稍后声明,属于第一个面板:"panel1.Controls.Add (this.Panel2);"
整个程序总是有2个TextBoxes, 7个PictureBoxes用作按钮,3个标签和1个面板(它们在程序开始运行时声明)。
在第二个面板被声明后,一个绘图函数被激活。函数绘制第二个面板
如果Panel2比Panel1高或宽(或两者都有)(Panel2变得部分可见),当绘图函数第一次被调用时,第二个面板在绘图函数完成后变为空白。我必须重新调整窗口的大小,或者为了让我的绘图回来(绘图函数在许多情况下被调用)。如果Panel2在各方面都比Panel1小,问题就不会发生。
Panel2被操纵的顺序如下:宣布Panel2;调整Panel2的属性;添加Panel2到Panel1;绘图面板2;其他与Panel2相关的内容
起初我在Panel1内部使用按钮和PictureBox。过去,只有当按钮没有使用默认外观时(无论PictureBox的大小如何),才会出现这个问题。后来我用Panel改变了PictureBox,用PictureBoxes改变了按钮(我想做自定义按钮)。在那次改变之后,我再次面对这个问题。
代码太大了,我不确定是否有必要。我肯定对代码的算法有问题。
你画错了
您需要在Paint
处理程序中绘制,以便在控件重新绘制时重新绘制您的内容。
你不应该画到control.CreateGraphics()