Hi Matthew,
It's because VB.NET abandons GDI for GDI+ and GDI+ is a dog. MS has no
concern about graphic performance. Maybe Longhorn will help in about 3
years. Historically, MS stays clear from graphic issues.
I would recommend staying with VB6. Native un-managed code will be around
for ever. Eventually systems will get fast enough to handle .NET as it was
intended.
Use VB.NET for web development and non-intensive client side apps.
For intensive client side apps, VB6 or VC6 rule.
best regards,
Robert Dede
www.gigasoft.com
"Matthew" <mososky@hotmail.com> wrote in message
news:dc0ab83a.0408020706.2a739a74@posting.google.c om...[color=blue]
> I am not the most talented programmer to grace the earth by a long
> shot. But I've got a gripe I need to air about the .NET implementaion
> of Visual Basic. I can live with alot of the major changes to the
> structure and syntax of the code but I thought the purpose of
> re-engineering the damn thing would result in improved performance all
> around, well the .NET seems to really suck doing things graphically on
> forms that VB6 Seemed to do fine. Anyone can jump in and tell me am an
> idiot and here's the right way to do it, if this really is an
> as*-backwards way but I'm really frustrated that things so easy have
> been made more complicated and perform less well.
>
> The premise is simple and I expect that people every do this all the
> time. I have and application that has more than one form - All of the
> forms are the same size but comprimise different menu's and functions.
> When a user changes from one form the the next i want the next form to
> occupy the same space as the previous one - so that the process of
> changing forms is invisible to the user.
>
> Well here's how I'm doing it.
> <Seriously Abriviated Version>
>
> The Application starts in a module sub main.
>
> Sub Main
>
> <Declare all my form objects>
> Public CurrentForm as string
> Public EndApp as boolean
>
> While EndApp = false
>
> Select Case CurrentForm
> <ANYCASE> = ThatForm.showdiaglog
>
> End While
>
> So the Application just keeps looping thru opening the right form
> after another is closed until the EndApp is set to true
>
> This is working OK - but the real pain of if is I think im creating a
> fresh object each time i call the <formname>.showdiaglog because the
> last one was unloaded. The end problem is that FORMS WITH GRAPHICS
> TAKE A LONG TIME TO LOAD IN .NET. With just a background image on the
> form it's not that bad, maybe .25 seconds extra, however if you want
> to make your label backgrounds invisible after that forget it. - Every
> Lable with a transparent background adds between .25 and .5 seconds to
> the form loading. with just a few lable this makes the application
> look slugish just loading a form with a background and a few labels
> (what the hell is that!) So the only way i can see my way outta this
> is...
>
> 1)How can i load the form without making it visible and hold it in the
> background until I want the user to access it? - This doesnt seem to
> be as easy making it visible and invisible but maybe someone knows
> how.
>
> 2) How can i get the graphics on a new form to load fast? - vb6 did
> this instantly - why is visual studio taking a step back
>
> -matthew
> And Thanks![/color]