IT rekvalifikace s garancí práce. Seniorní programátoři vydělávají až 160 000 Kč/měsíc a rekvalifikace je prvním krokem. Zjisti, jak na to!
Hledáme nové posily do ITnetwork týmu. Podívej se na volné pozice a přidej se do nejagilnější firmy na trhu - Více informací.
Avatar
Martin Vejvoda:22.8.2014 12:00

Čau,
mám problém s vertikálním scroll barem. V picture boxu mám graf, ve kterém se posunuju pomocí scroll baru. Problém je, že když graf obsahuje víc položek (cca 100+) tak se nemůžu dostat na všechny položky a asi 20 položek nevidím, potřeboval bych scrollovat dál, ale už to nejde. Tohle by měla obstarávat vlastnost Maximum, ale když ji snížím/zvýším tak se nic nestane. Nevíte někdo, co s tím?

Odpovědět
22.8.2014 12:00
matika > informatika
Avatar
sadlomaslox25:22.8.2014 18:00

Jak to mas v kodu sestavene? Nechce se me ted poustet VS ale pokud si pamatuju tak se udela scrollView a do vlastnosti Child/Content se da ten picture box a ono se to "udela samo" ne ?

 
Nahoru Odpovědět
22.8.2014 18:00
Avatar
Jan Vargovský
Tvůrce
Avatar
Odpovídá na sadlomaslox25
Jan Vargovský:22.8.2014 18:12

Je to WF né WPF :)

 
Nahoru Odpovědět
22.8.2014 18:12
Avatar
Martin Vejvoda:22.8.2014 19:27

jj, jedná se o WF. Jen upřesním, že mám VS2010 Express (asi to ale na to mít vliv nebude), ale hlavně sem začátečník, takže žádný složitý věci, prosím :)

Nahoru Odpovědět
22.8.2014 19:27
matika > informatika
Avatar
sadlomaslox25:22.8.2014 21:01

Dyt je to tam to samy. Das panel, na panelu das AutoScroll true, do panelu das pictureBox a tomu das SizeMod auto a je to.

 
Nahoru Odpovědět
22.8.2014 21:01
Avatar
Odpovídá na sadlomaslox25
Martin Vejvoda:22.8.2014 23:06

Díky za radu, ale to mi nefunguje, celý se mi to rozhodilo a problém stejně přetrvával.

Nahoru Odpovědět
22.8.2014 23:06
matika > informatika
Avatar
Odpovídá na Martin Vejvoda
sadlomaslox25:23.8.2014 13:05

Jaky problem pretrvava ? Co se ti rozhodilo ? Ted sem to skousel Panel->PictureBox + ty property s obrazkem s rozlisenim 16 000x12 000 a funguje to jak ma.

 
Nahoru Odpovědět
23.8.2014 13:05
Avatar
Martin Vejvoda:23.8.2014 18:28

asi nejlepší bude, když to ukážu na obrázku:

  1. obrázek ukazuje graf s SizeMod na Normal. V levé části grafu jsou čísla, která určují pořadové číslo položky. Aktuálně tam nevidím asi 60 položek ze 190.
  2. obrázek ukazuje graf s SizeMod na AutoSize. Graf je celý rozhozený.
Nahoru Odpovědět
23.8.2014 18:28
matika > informatika
Avatar
Odpovídá na Martin Vejvoda
sadlomaslox25:23.8.2014 19:33

To bude chtit asi aby si sem postnul vic kodu protoze jak rikam Panel+PictureBox funguje normalne.

 
Nahoru Odpovědět
23.8.2014 19:33
Avatar
Martin Vejvoda:23.8.2014 19:54

a co sem mám hodit? Kreslení grafu?

Nahoru Odpovědět
23.8.2014 19:54
matika > informatika
Avatar
sadlomaslox25:23.8.2014 20:16

Jo ty ten graf kreslis jo ? no to by sme se mohli pomalu dostavat k jadru problemu :D
predpokladam ze to NEKRESLIS do bitmapy kterou pak nastavujes jako zdroj pro pictureBox

 
Nahoru Odpovědět
23.8.2014 20:16
Avatar
Martin Vejvoda:24.8.2014 10:16

asi nejlepší bude, když sem hodim kousek kódu

tohle se stane v okamžiku spuštění programu:

if (pbGraf1.Image == null)
            {
                pbGraf1.Image = new Bitmap(pbGraf1.Width, 1000,
                System.Drawing.Imaging.PixelFormat.Format32bppArgb);
            }

následující část proběhne v okamžiku, když se má překreslit (prostě zobrazit) graf:

if (pbGraf1.Image != null)
            {
                using (Graphics g = Graphics.FromImage(pbGraf1.Image))
                {
                    g.FillRectangle(SystemBrushes.ButtonFace, 0, 0,
                                    pbGraf1.Width, pbGraf1.Height);
                    dg.DrawGraf(g, pbGraf1, scbGraf1.Value, analyt1,
                       Convert.ToDouble(tbOd1.Text), Convert.ToDouble(tbCilHodnota1.Text)); // zde se kreslí čáry a text
                    g.Save();
                }
            }

P.S. zkusil sem si s tím trochu pohrát pohrát a zmenšil sem bitmapu, takže se mi to v AutoSize módu nerozhodí, stále se ale nemůžu dostat na posledních 60 položek

Nahoru Odpovědět
24.8.2014 10:16
matika > informatika
Avatar
sadlomaslox25:24.8.2014 12:18

ty mas nejak divoky kod xD

tak napred si udelas bitmapu ktera je jen 1000 px vysoka (ano sama se neroztahne kdyz ji das jen 1000px na vysku)

pak ovsem vubec neberes jeji vysku v potaz kdyz se odkazujes na pbGraf1.Height protoze pbGraf1.Height != 1000.

a nakonec este nechapu proc posilas do metody DrawGraf objekt Graphics tak objekt Picturebox. Nekresli se to nahodou jen do Graphics ?

 
Nahoru Odpovědět
24.8.2014 12:18
Avatar
Odpovídá na sadlomaslox25
Martin Vejvoda:24.8.2014 18:50

divoký? možná trochu, jak sem psal, sem tak trochu amatér

PictureBox do DrawGraf(…) posílám kvůli rozměrům, se kterýma tam pracuju, ale šlo by to nahradit číslem, to mě nenapadlo.

Jinak máš pravdu, že tu bitmapu ignoruju, to mi nedošlo, ale nějak nevim, kde bych to měl změnit.

Nahoru Odpovědět
24.8.2014 18:50
matika > informatika
Avatar
Odpovídá na Martin Vejvoda
sadlomaslox25:24.8.2014 20:47

Tak bitmapu vytvarej az kdyz vis velikost vykreslovane oblasti.

 
Nahoru Odpovědět
24.8.2014 20:47
Avatar
Martin Vejvoda:25.8.2014 15:57

takže to předělat na něco takovýho?

pbGraf1.Image = new Bitmap(pbGraf1.Width, analyt1.Count * 5,
                System.Drawing.Imaging.PixelFormat.Format32bppArgb);
     //analyt1.Count = velikost souboru

bohužel to nefunguje

Nahoru Odpovědět
25.8.2014 15:57
matika > informatika
Avatar
Odpovídá na Martin Vejvoda
sadlomaslox25:25.8.2014 20:58

bitmapu vytvarim tam, kde vim, kolik mista potrebuji k zobrazeni tech dat. nevim, kde presne je to misto v tvem programu. a nevim co ti na postnutem kodu nejde. pojem nefunguje je totiz docela obecny pojem :D

 
Nahoru Odpovědět
25.8.2014 20:58
Avatar
Martin Vejvoda:26.8.2014 14:49

furt mám problém se scroll barem, nejsem schopen dostat se posledních 60 položek

Nahoru Odpovědět
26.8.2014 14:49
matika > informatika
Avatar
Odpovídá na Martin Vejvoda
sadlomaslox25:26.8.2014 14:56

no problem bude u tebe v tom ze spatne pocitas vyslednou vysku bitmapy.

 
Nahoru Odpovědět
26.8.2014 14:56
Avatar
Martin Vejvoda:27.8.2014 15:24

jakože je malá? i když nastavím výšku na 50 × počet položek v seznamu, tak nejsem schopnej se dostat až úplně dolů

Nahoru Odpovědět
27.8.2014 15:24
matika > informatika
Avatar
Jan Vargovský
Tvůrce
Avatar
Odpovídá na Martin Vejvoda
Jan Vargovský:27.8.2014 15:29

A víš určitě, že je velikost 50? Očividně ne :)

 
Nahoru Odpovědět
27.8.2014 15:29
Avatar
Martin Vejvoda:27.8.2014 15:58

no, jeden řádek má velkost 20, takže 50 je víc než dost

Nahoru Odpovědět
27.8.2014 15:58
matika > informatika
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 22 zpráv z 22.