CSkin博客

标题: 绘制了界面之后用鼠标滚动会出现画面撕裂的情况 [打印本页]

作者: fengxichou    时间: 2015-12-24 13:09
标题: 绘制了界面之后用鼠标滚动会出现画面撕裂的情况
如图,我用代码绘制了这样一个界面,但是在拖动滚动条的时候会出现界面撕裂的情况
请教这个应该怎么处理?



代码如下:

[C#] 纯文本查看 复制代码
        public void ShowHeroes(string herotype)
        {
            var heros=_apricot.AllHeroes();
            var i=0;
            foreach (var item in heros)
            {
                SetHero(item, i);
                i++;
            }
        }

        public void SetHero(Hero hero, int count)
        {
            var herologo=new SkinPictureBox();
            var heroname=new SkinLabel();
            var heropanel=new  SkinPanel();
            heropanel.Controls.Add(heroname);
            heropanel.Controls.Add(herologo);
            BackPanel.Controls.Add(heropanel);


            herologo.BackColor = Color.Transparent;
            herologo.Size = new Size(64, 64);
            herologo.Location = new Point(5, 5);
            herologo.BackgroundImageLayout = ImageLayout.Zoom;
            herologo.BackgroundImage = Picture.HeroSquare(hero.EnName);


            heroname.BackColor = Color.Transparent;
            heroname.BorderColor = Color.White;
            heroname.Location = new Point(0, 69);
            heroname.Size = new Size(74, 20);
            heroname.TextAlign = ContentAlignment.MiddleCenter;
            heroname.Text = hero.ChName;
            heroname.Font = new Font("微软雅黑", 9F, FontStyle.Regular, GraphicsUnit.Point, ((byte)(134)));


            heropanel.BackColor = Color.FromArgb(70, Color.White);
            heropanel.ControlState = CCWin.SkinClass.ControlState.Normal;
            heropanel.Visible = true;
            heropanel.Size = new Size(74, 90);


            int row=count/7;
            int comn=count%7;

            heropanel.Location = new Point(6 + 88 * comn, 12 + 94 * row);



        }















作者: 乔克斯    时间: 2015-12-28 11:30
panel最好不要设置背景。。否则像这种效果很严重。没法处理。。除非考虑dskin界面库或者LayeredSkin界面库。
作者: fengxichou    时间: 2015-12-29 09:54
乔克斯 发表于 2015-12-28 11:30
panel最好不要设置背景。。否则像这种效果很严重。没法处理。。除非考虑dskin界面库或者LayeredSkin界面库 ...

谢谢回答...
顺带说一句
广告打的真响亮33333
作者: 乔克斯    时间: 2015-12-29 09:56
fengxichou 发表于 2015-12-29 09:54
谢谢回答...
顺带说一句
广告打的真响亮33333

LayeredSkin界面库在论坛有下载,是免费版的。也有自定义列表组件,你可以去了解下。用这个做列表,效率会提高100%。




欢迎光临 CSkin博客 (http://bbs.cskin.net/) Powered by Discuz! X3.2