[ Emerald_MG @ 12.09.2008. 00:29 ] @
Znam da je ovo pitanje pre za VB.NET forum ali tamo definitivno nema ni delić spremnosti za pomoć u poređenju sa ovim forumom (navodno penzionisanog VB6). Kao i sve vas pritisla me je potreba da pređem na .NET platformu i treba da preradim jedan program ranije napisan u VB6 na VB.NET. Polako učim i mučim se. Radi se o sledećem (govorim kako je to bilo rešeno u VB6). Na jednoj formi imam PictureBox neke veličine (nebitno koje). Iz određene kolekcije klasa uzimam podatke koje pretvaram u grafiku na tom PictureBox-u. Očitam vrednosti koje treba da prikažem (npr. 1000 x 1200) vidim koja je veća i na odgovarajući način uradim : PictureBox1.ScaleHeight = ta vrednost + malo za marginu PictureBox1.ScaleWidth = ta vrednost + malo za marginu PictureBox1.Top = na neku marginu kao i .Left svojstvo i dalje crtam sa "orginalim" vrednostima objekta. Moje pitanje je kako to sada odraditi u VB.NET-u ?! Pripremu za crtanje radim na PictureBox kontroli (jer moram da imam crtež svo vreme, bez obzira da li neka forma prelazi preko njega ili ne): Imports System.Drawing.Drawing2D .... bmp = New Bitmap(PictureBox1.Width, PictureBox1.Height) PictureBox1.Image = bmp G = Graphics.FromImage(bmp) .... myPath.AddLines(myPoints) myPath.CloseFigure() G.DrawPath(pn, myPath) ..... dalje je problem kako postići ono što sam opisao ranije, jer npr. bmp ima 850 x 720 pixel-a a potrebno mi je da crtam vrednosti od recimo 1000 do 6000 (pixel-a). G.ScaleTransform(0.2, 0.2) - npr. ne daje dobar rezultat jer nacrtan je samo "deo" crteža pa se i kod skaliranja samo "umanji" taj deo koji je nacrtan. Bilo kakva ideja bi mi koristila ... |