将richtextbox背景色设置为透明后出现的情况

时间:2022-06-29 14:50:56
因为richtextbox无法设置背景图片,所以我将richtextbox重写,使其能够背景透明
这样就能显示歌词的背景图片了
可是程序运行后出现一个问题

下面是双击歌曲列表正常出现了歌词
将richtextbox背景色设置为透明后出现的情况

但是播放了10几秒左右,歌词全部隐藏了,我再在richtextbox中选一下,就又出现了歌词。这是什么情况?
将richtextbox背景色设置为透明后出现的情况

下面是重写的代码

    public class TransparentRichTextBox : RichTextBox
    {
             protected override CreateParams CreateParams
             {
                    get
                {
                        CreateParams cp = base.CreateParams;
                        cp.ExStyle |= 0x20;
                        return cp;
                }
            }
    }


下面是设置文本

            Lrc lrc = Lrc.InitLrc(lyricPath);

            rtxtLyric.Text = string.Empty;

            StringBuilder sbLyric = new StringBuilder(1024);
            foreach (var line in lrc.LrcWord.Values)
            {
                sbLyric.Append(line).Append("\r\n");
            }

            rtxtLyric.Text = sbLyric.ToString();

4 个解决方案

#1


来人回复一下结个帖

#2


什么情况?送分的 将richtextbox背景色设置为透明后出现的情况

#3


你如果觉得是重写richtextbox引起的问题,你就先用自带的测试,你的描述和贴图别人很难回答你,

感觉是要去猜问题

#4


学习你的重写技术。

#1


来人回复一下结个帖

#2


什么情况?送分的 将richtextbox背景色设置为透明后出现的情况

#3


你如果觉得是重写richtextbox引起的问题,你就先用自带的测试,你的描述和贴图别人很难回答你,

感觉是要去猜问题

#4


学习你的重写技术。