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);
....
Předmět Autor Datum
Vytvor krátky, úplný a funkčný príklad, na ktorom sa dá vidieť problém, ktorý chceš vyriešiť. Potom…
los 31.03.2013 09:55
los
Č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…
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

Vytvor krátky, úplný a funkčný príklad, na ktorom sa dá vidieť problém, ktorý chceš vyriešiť. Potom ho sem nahraj, ideálne celé solution (v jednom ZIP súbore). Bez toho sa nájde asi málo ľudí, ktorí majú toľko voľného času, aby sa snažili vytvoriť program, ktorý sa správa rovnako.

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