Přidat otázku mezi oblíbenéZasílat nové odpovědi e-mailem C# Scrollbar usekává obrázky při rychlém jezdění.

Dobrý den, to co potřebuji je tady.
http://www.codeproject.com/Articles/370637/Fast-Im age-Scrolling-in-Csharp

Ale tomu já absolutně nerozumím.
Používám DoubleBuffered.

this.SetStyle(ControlStyles.UserPaint, true);
this.SetStyle(ControlStyles.AllPaintingInWmPaint, true);
this.SetStyle(ControlStyles.DoubleBuffer, true);
this.SetStyle(ControlStyles.ResizeRedraw, true);

Jde o to že kdyz scrollbarem jedu rychle tak obrázky se uřezávají.

Nevíte jak to mam napravit ?

Mam sepsanou funkci :

public void IDs_(Bitmap bi, int x, int z)
        {
            PictureBox a = new PictureBox();
            a.Size = new System.Drawing.Size(500, 300);
            a.BackColor = Color.Transparent;
            a.Location = new System.Drawing.Point(x, z);
            a.Image = bi;
            this.Controls.AddRange(new System.Windows.Forms.PictureBox[] { a });
        }

Pak obrázky vyvolávám takhle:

 IDs_(WindowsFormsApplication1.Properties.Resources.kamen, 100, 100);
            IDs_(WindowsFormsApplication1.Properties.Resources.trava, 100, 500);
            IDs_(WindowsFormsApplication1.Properties.Resources.kamen, 700, 100);
            IDs_(WindowsFormsApplication1.Properties.Resources.trava, 700, 500);
            IDs_(WindowsFormsApplication1.Properties.Resources.kamen, 1300, 100);
            IDs_(WindowsFormsApplication1.Properties.Resources.trava, 1300, 500);
            IDs_(WindowsFormsApplication1.Properties.Resources.trava, 1900, 100);
            IDs_(WindowsFormsApplication1.Properties.Resources.trava, 1900, 500);
            IDs_(WindowsFormsApplication1.Properties.Resources.trava, 2500, 100);
            IDs_(WindowsFormsApplication1.Properties.Resources.trava, 2500, 500);
            IDs_(WindowsFormsApplication1.Properties.Resources.trava, 3100, 100);
            IDs_(WindowsFormsApplication1.Properties.Resources.trava, 3100, 500);
            IDs_(WindowsFormsApplication1.Properties.Resources.trava, 3700, 100);
            IDs_(WindowsFormsApplication1.Properties.Resources.trava, 3700, 500);
....
Jsou zobrazeny jen nové odpovědi. Zobrazit všechny
Předmět Autor Datum
Čemu na tom příkladu nerozumíš? Vždyť to tam máš hezky popsaný jak to udělat.
Wikan 31.03.2013 10:37
Wikan
Neznám tam mnoho věcí, například jako: MemoryStream bms = new MemoryStream(bigbyte); Kdyby tam byl… nový
siOnzeeSlav 31.03.2013 13:42
siOnzeeSlav
A on tam snad není? http://www.codeproject.com/script/Articles/ViewDow nloads.aspx?aid=370637 poslední
Wikan 31.03.2013 14:44
Wikan

Zpět do poradny Odpovědět na původní otázku Nahoru