Home page Home page Home page Home page
Pixel Header R1 C1 Pixel
Pixel Header R2 C1 Pixel
Pixel Header R3 C1 Pixel
By Captain C | Wednesday, 3 June 2009 12:00 | 0 Comments
With the advent of OI 9.1.0 the number of controls allowed per form in the Form Designer has been raised from 920 to 2048. This is all well and good but we're often asked why there's a limit at all?

Well, there are a few reasons, but currently most of them are to do with the internal design of the Form Designer executable itself (allocating static arrays and suchlike). However, as you've seen with OI 9.0.0 work is under way to move the Form Designer into OpenInsight proper, so the limitations imposed by the design of the standalone Form Designer will be moot.

Unfortunately, before you get too excited at the prospect of the new Form Designer having no limits at all (and we don't know if that's going to be the case anyway), there's still another factor to take into account: each process in Windows is limited to 10000 User objects (or window handles as they are more commonly known).

Consider the following:
  • Say you can create a form with 3000+ controls (not an impossible requirement according to the wishes of some clients) and you test-run it.
  • You're now looking at 6000+ (your design form and the test form) out of the 10000 handle limit taken up, and this doesn't take into account any other OI forms running like the Form Designer itself, the main OI IDE, the System Editor, your other application forms, and so on.
  • You can see it won't take long to hit that 10000 limit!

Even Microsoft themselves had to deal with this problem for Internet Explorer. It's theoretically possible to create far more than 10000 controls with an HTML form, so all the form controls in the browser are emulated - they are not actual User objects.

So, the bottom line is if you're designing forms with a very high number of controls just remember that Windows itself imposes limits on how many you can create - it might be wise to consider a UI redesign?

Labels: , ,


Post a Comment

Subscribe to Post Comments [Atom]

<< Home

Pixel Footer R1 C1 Pixel