views:

402

answers:

5

I'm designing some dialog boxes, and I'm having a hard time to fit everything. (and it has to fit on a single dialog box by design, so please don't tell me I should make two dialogs instead of one:))

I'm wondering what's the max size a dialog can have before being annoying for the end user. Of course it should't be bigger than his resolution, but are there any other boundaries to consider?

I'm trying to limit at 800x580 (so that it can display fine on a 800x600 screen without hiding the taskbar), but I expect my users to be on 1024x768 or better screen resolutions.

Is a 800x580 dialog box ok, or is it too big?

+2  A: 

Have you considered using a tabbed layout?

Also, I believe the smallest main-stream screen resolution is 1024x600.

I'd say anything over that is too big. I try to stick below 1000x500.

jjnguy
I've never seen such a resolution (1024x600). What kind of hardware are you thinking of?re tabs, no, unfortunately, the user need to see all the data on screen at the same time
Brann
I have a netbook. Its resolution is 1024x600.
jjnguy
Same here, my netbook is 1024x600
Nifle
@Jinguy : why 1000x500 instead of 1024x500. it's better to use those 24 extra pixels, isn't it?
Brann
I like to leave a little extra room. 1000 seems to be a little more of a round number than 1024. But it is a little arbitrary.
jjnguy
1000 a rounder number than 1024? You are a programmer, right? :)
Ed Swangren
@Ed : to a programmer, 1024 is probably rounder than 1000 :)
Brann
Well, the three '0's looks prettier than a power of two imho.
jjnguy
+2  A: 

I'm writing this on a netbook (ASUS) with resolution 1024 x 600. I've also noticed this is a defacto standard for most other netbooks too.

Another option: you could create a dialog that resizes itself automatically to fill the current desktop (except for the task bar).

It could also enforce a "flow" style layout for it's child controls. This would ensure the best use of the available space is made.

To get "flowing" in Windows forms you can use either the flow layout control or (for a richer interface) the WebBrowser control.

By the way, modal dialogs seem to be less popular as a way of user interaction these days. Especially large dialogs containing a lot of information/controls. This article has some good alternatives.

Ash
A: 

I think that if the user NEEDS to see all data on screen at the same time... and you can fit everything in 800x580... I think that it's a fine size.

If you know all users have bigger resolutions so don't struggle... that size is OK.

However... a way of showing lots of information and being able to edit it... could be a PropertyGrid control (an example here)... may be that could shrink a bit the form if you don't feel confortable with it being so big. Don't know if it a possibility given the needs of your client/user.

Romias
A: 

Just hope that no-one ever tries using your app on a media center running through a standard definition display. That's 640x480 for NTSC. I've suffered this problem with quite a few apps.

andybak
A: 

Whatever your pixel by pixel size, if it takes more than a few seconds for skilled users to complete the use of your window, then it shouldn’t be a dialog. Anything longer is annoying. You’d be asking your users to do too much work that is too easy to lose (e.g., by hitting Cancel accidentally) and too hard to re-entered (e.g., between sessions). If you have so many controls that the dialog needs to be 800 by anything, then it’s too many controls. 200,000 square pixels and 40 controls is the very most you should consider for a dialog. And tabs are nature’s way of saying your dialog is too complex.

Dialogs are for entering parameters to execute a single command on one or more data objects visible in the primary window for the dialog, which is why dialogs need to be small and simple. I suspect that’s not what you’re doing. Instead, you’re using a “dialog” to represent the main data objects and carry out a major task, not a single command.

What you want is a primary window, not a dialog, with all the support necessary for the complicated task you’ve set up for the user. That includes providing a means for users to save, retrieve, and copy their work. That means a menu bar and toolbar with all the standard commands, including help. The window should absolutely be modeless, and be resizable, maximizable, and minimizable.

Primary windows should be designed to work best at the size of most (over half) of your users’ screens. 1024x768 is generally fine for today’s laptop/desktop screens, not that you should use that much space if you don’t have to. If the user’s screen is smaller, or the user for any reason resizes your window below the design size, then scrollbars should appear to allow full access to all controls and content in the form –just like any primary window. The experience on the web indicates that scrolling is not a showstopper for forms.

Beyond that, tabs may be used in a primary window to increase the number of controls on it. You said you don’t want to hear about multiple windows, but multiple windows should be used instead of tabs if the user will be comparing data across tabs/windows. You can also fit more in a given primary window size by using a compact presentation (I describe this at http://www.zuschlogin.com/?p=42), but test such an approach on your users before committing to it.

Michael Zuschlag
I don't understand why you answer a question I explicitly didn't ask rather than the one I asked:) To answer you, in my case, I definitely need something modal, and everything should be visible at the same time, which lets me little choice but a dialog.
Brann
Great blog, by the way :)
Brann
Why does it have to be modal?
Michael Zuschlag