gpt4 book ai didi

c# - 为什么画在面板上的文字会消失?

转载 作者:太空狗 更新时间:2023-10-29 22:13:18 24 4
gpt4 key购买 nike

我正在尝试在面板上绘制文本(面板有背景图片)。

它工作得很好,但是当我最小化然后最大化应用程序时,文本消失了。

我的代码:

using (Graphics gfx = Panel1.CreateGraphics())
{
gfx.DrawString("a", new Font("Tahoma", 5), Brushes.White, new PointF(1, 1));
}

如何让它保持静态以免丢失?

最佳答案

继承Panel,添加代表需要写入的文本的属性,重写OnPaintMethod():

public class MyPanel : Panel
{
public string TextToRender
{
get;
set;
}

protected override void OnPaint(PaintEventArgs e)
{
base.OnPaint(e);
e.Graphics.DrawString(this.TextToRender, new Font("Tahoma", 5), Brushes.White, new PointF(1, 1));
}
}

这样,每个 Panel 就会知道它需要渲染什么,并且知道如何绘制自己。

关于c# - 为什么画在面板上的文字会消失?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/946150/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com