Wykresy i scrolling bitmapy.

0

Witam.

Przedstawie moze swoj problem.
A wiec moj program wyrysowuje mi wykresy. Mam zrobiony Panel a na nim o tych samych wymiarach jest obiekt Bitmap na ktorym wyrysowuje odpowiednie wykresy.
Miewam takie wykresy ktorych wspolrzedne wykraczaja poza rozmiar, nawet jesliby zmaksymalizowac rozmiary panelu i bitmpay. Potrzebny jest wiec jakis scrolling.

Mam pytania: Czy w ogole dobrze do tego sie zabieram czy warto podejsc do tego z innej strony? (obiektu Bitmap uzywam zeby potem moc zapisywac np. do schowka, nie wiem jak w C# ale w C++ chyba tylko taki obiekt mozna bylo zapisac) Czy ktos moze ma przyklad scrollingu dla bitmapy takiej? :)

0

Zmień AutoScroll panelu na true, a rozmiar bitmapy ustaw na taki, aby się mieścił wykres.
Ale lepiej byłoby raczej narysować wykres w mniejszej skali tak aby sie dopasował do wielkości panelu.

0

No wreszcie ktos do dyskusji :)
A wiec tak.

Mam wlasnie tak zrobione:

bufor = new Bitmap(Panel.Width, Panel.Height);
chart = Graphics.FromImage(bufor);

Dodatkowo mam w panelu juz autoscroll ustawiony ;) I nie pojawia sie wlasnie zaden scroll :/
Rysuje wykres:

chart.DrawLines(pen, points);

Gdzie points jest tablica floatow ktorej elementy maja wartosci czasem po 2000 ;)
Scrollbar sie nie pojawia :/
Moze ja jakos zle deklaruje ta Bitmape? I nie jest ona jakos "powiazana" strickte z tym panelem.

edit:

Jeszcze takie przemyslenia.
Wiesz, jeszcze myslalem zeby dodac te obiekty vScrollBar i hScrollBar, tylko zabardzo nie wiem jak musialbym kodowo rozwiazac eventy.

Generalnie wyobrazam sobie to tak zeby byla jakas spora bitmapa i jej czesc byla wyswietlana na wielkosc Panelu a reszta byla niewidoczna i mozliwa do pokazania po klikaniu na scrollbary :)
Tylko nigdzie nie moge znalezc jakiegos podobnego przykladu :/ (na msdn jakies z PictureBoxami sa tylko pokrecone troche jak dla mnie)

No ostatecznoscia jest skalowanie wykresu, jezeli ktorys z punktow przekracza wielkosc Panelu to podzielic np. wszystkie punkty przez 2, podzielic skale na osi i w sumie by bylo chyba.

0

Myślałem, że tą bitmapkę w jakimś komponencie trzymasz. Wrzuć na panel PictureBox i operuj jego bitmapą.
Proponuje zrobić tak, aby wykres dało się narysować w dowolnej skali. Wtedy można dopasowywać go do panelu bez problemu, robić zooma ...

0

Ok, powalcze z tym PictureBoxem od jutra i w razie braku rozwiazan problemow na siecie bede sie zglaszal

1 użytkowników online, w tym zalogowanych: 0, gości: 1