Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • World
  • Users
  • Groups
Skins
  • Light
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
Code Project
CODE PROJECT For Those Who Code
  • Home
  • Articles
  • FAQ
Community
  1. Home
  2. The Lounge
  3. UI guidelines for dialog boxes

UI guidelines for dialog boxes

Scheduled Pinned Locked Moved The Lounge
htmlcomdesignhostingbusiness
55 Posts 22 Posters 0 Views 1 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • N Nish Nishant

    Though there are various implementations of resizable dialogs, none of them are anywhere near perfect. Otherwise the developer must develop separate dialogs, one for each kind of resolution or resolutions. But that'd be a big ask :-( Nish


    Author of the romantic comedy Summer Love and Some more Cricket [New Win] Review by Shog9 Click here for review[NW]

    A Offline
    A Offline
    Anna Jayne Metcalfe
    wrote on last edited by
    #41

    If you're working with MFC projects, Herbert Menke's CResizeCtrl may be of help to you here. Since it's a plug-in class, there's no need to write hand-crafted OnSize() handlers in each dialog...just add them to the resizer and tell it how they should be sized/positioned as the dialog is resized. :cool: Andy Metcalfe - Sonardyne International Ltd

    Trouble with resource IDs? Try the Resource ID Organiser Add-In for Visual C++
    "I would be careful in separating your wierdness, a good quirky weirdness, from the disturbed wierdness of people who take pleasure from PVC sheep with fruit repositories." - Paul Watson

    1 Reply Last reply
    0
    • M Matt Gullett

      Here are some of my general rules. (Note: no rule is totally inflexible.) 1. For dialogs with more than 2 or 3 lines of text or controls, place the control buttons in the lower right of the dialog. (I place them in the lower right for all dialogs now but my data indicates upper right makes no difference for small dialogs.) 2. Also for dialogs with more than 2 or 3 lines place the help button (if any) in the lower left of the dialog. 3. Generally, all text should be left justified for US english display. 4. Button text should be in Upper lower case (ie. Cancel instead of CANCEL). 5. The dialogs title should be in Upper lower case (ie. Warning instead of WARNING) 6. IF the button text or title is in upper case, the other should be also. 7. If possible use Bold. underline and/or italic to emphasise text instead of CAPS. 8. Text in CAPS should be reserved to keu words and phrases only, and never more than 3 words at a time. 9. The group frame is your friend when used wisely. 10. Labels should all have an ending colon or not have the ending colon. Be consistent. 11. If needed, Bold any labels for required fields. If Bold is not avaiable use a leading asterick. 12. Place labels above or to the left of controls they identify, but never below (at least for US English.) 13. For numeric entry fields right justify is best. 14. Avoid the Masked edit control for dates unless changing the date in the control is a rare occurence in which case it should be a picket anyway. 15. Splitters and dialogs don't mix. 16. The tree control is generally evil unless you're software is for other developers especially on dialogs. 17. For dialogs containing lists it is best if the dialog is sizeable. 18. If your dialog is sizable, show the bottom-right chevron so the user knows it's sizable. 19. Edit controls should have a max length specified unless there really is no max length. 20. Multi-line edit control should allow the user to press ENTER to get a new line. Just a few I can think of at 4:30 in the morning.

      A Offline
      A Offline
      Anna Jayne Metcalfe
      wrote on last edited by
      #42

      Matt Gullett wrote: 2. Also for dialogs with more than 2 or 3 lines place the help button (if any) in the lower left of the dialog. Surely you mean lower right? (Property Pages and Wizards follow this convention, unless you move the default buttons). Andy Metcalfe - Sonardyne International Ltd

      Trouble with resource IDs? Try the Resource ID Organiser Add-In for Visual C++
      "I would be careful in separating your wierdness, a good quirky weirdness, from the disturbed wierdness of people who take pleasure from PVC sheep with fruit repositories." - Paul Watson

      M 1 Reply Last reply
      0
      • A Anna Jayne Metcalfe

        Matt Gullett wrote: 2. Also for dialogs with more than 2 or 3 lines place the help button (if any) in the lower left of the dialog. Surely you mean lower right? (Property Pages and Wizards follow this convention, unless you move the default buttons). Andy Metcalfe - Sonardyne International Ltd

        Trouble with resource IDs? Try the Resource ID Organiser Add-In for Visual C++
        "I would be careful in separating your wierdness, a good quirky weirdness, from the disturbed wierdness of people who take pleasure from PVC sheep with fruit repositories." - Paul Watson

        M Offline
        M Offline
        Matt Gullett
        wrote on last edited by
        #43

        Oy yea! Lower right it is. BTW it was 4:30 AM when I posted the message so I am surprised it makes sense at all.

        1 Reply Last reply
        0
        • N Nish Nishant

          Michael P Butler wrote: What's wrong with the "offical" Microsoft User Interface Guidelines? Well, 90% of the application development here is targetted for X-Windows based systems :-( Nish


          Author of the romantic comedy Summer Love and Some more Cricket [New Win] Review by Shog9 Click here for review[NW]

          M Offline
          M Offline
          Michael P Butler
          wrote on last edited by
          #44

          Well just cut and paste the MS ones, put your name on it and nobody'll know the difference. ;-) Michael :-) Look, try and use your intelligence, man, even if you are a politician. - The Doctor

          1 Reply Last reply
          0
          • C Chris Maunder

            11. Developers who provide dialogs with messages such as 'Your application is toast: Shutting down' with [OK] and [Cancel] buttons, and for which the Cancel button does not cancel the aforementioned toasting of said application, will be taken out back and shot. 12. Dialogs that have the message 'Lame: we need to restart Windows' and for which clicking the 'X' close button, hitting escape, or clicking 'Cancel' (if provided) goes ahead and restarts windows in defiance of the users choice will cause the developer who wrote the code to be staked over an ant's nest and covered in honey. cheers, Chris Maunder

            C Offline
            C Offline
            Christopher Duncan
            wrote on last edited by
            #45

            Chris Maunder wrote: 11. Developers who provide dialogs with messages such as 'Your application is toast: Shutting down' with [OK] and [Cancel] buttons, and for which the Cancel button does not cancel the aforementioned toasting of said application, will be taken out back and shot. [OK] [Cancel] should be replaced with [Crash] [Burn] If I'm going to get choices, at least make them realistic. Chistopher Duncan Author - The Career Programmer: Guerilla Tactics for an Imperfect World (Apress)

            1 Reply Last reply
            0
            • O Olli

              Nishant S wrote: The default windows behaviour is to tab on TAB and dismiss on ENTER I know, you know... but my customers do not really now... When you see them work, they click from edit to edit for example, and not so many are using the keyboard navigation (coz they don't know...)

              Olli I feel like I'm diagonally parked in a parallel universe.....
              :suss: :rolleyes: :suss:

              P Offline
              P Offline
              Phil J Pearson
              wrote on last edited by
              #46

              Then you should upgrade to the latest version of customer. There's really no excuse for continuing to use the old, broken version. Phil

              O 1 Reply Last reply
              0
              • P Phil J Pearson

                Then you should upgrade to the latest version of customer. There's really no excuse for continuing to use the old, broken version. Phil

                O Offline
                O Offline
                Olli
                wrote on last edited by
                #47

                LOL :laugh: :laugh: :laugh:

                Olli I feel like I'm diagonally parked in a parallel universe.....
                :suss: :rolleyes: :suss:

                1 Reply Last reply
                0
                • N Nish Nishant

                  Hello James Twine. First of all, thanks for the reply! James R. Twine wrote: 3. On Windows based systems, the dialog will have a Close button [X} in the title bar which will duplicate the behaviour of the CANCEL button This is default behavior. The same goes for (see below). Not for Java and VB developed applications!!! James R. Twine wrote: There are cases where non-modal windows are very useful for data entry. The Properties window in DevStudio is a perfect example: image having to manually dismiss a dialog each time you changed a control's text, ID, or style in the resource editor... Hmmm. I guess I'll have to add a special case clause for that!!! :-( Regards, Nish


                  Author of the romantic comedy Summer Love and Some more Cricket [New Win] Review by Shog9 Click here for review[NW]

                  J Offline
                  J Offline
                  James R Twine
                  wrote on last edited by
                  #48

                  Nishant S wrote: Not for Java and VB developed applications!!!    That is because their implementation of the boxes is broken! :)  Actually, now that I think about it, I KNOW that the Dialog Manager automatically handles , but I am not so sure about ...    Peace! -=- James. "There is nothing worse than being oblivious to the fact that you do not know what you are doing." [Get Check Favorites 1.4 Now!]

                  1 Reply Last reply
                  0
                  • M Michael P Butler

                    What's wrong with the "offical" Microsoft User Interface Guidelines? http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnwue/html/ch09d.asp Michael :-) Look, try and use your intelligence, man, even if you are a politician. - The Doctor

                    J Offline
                    J Offline
                    James R Twine
                    wrote on last edited by
                    #49

                    Michael P Butler wrote: What's wrong with the "offical" Microsoft User Interface Guidelines?    Nothing... Except a lot of developers are ignorant of them.  There are broken GUIs everywhere...    Peace! -=- James. "There is nothing worse than being oblivious to the fact that you do not know what you are doing." [Get Check Favorites 1.4 Now!]

                    1 Reply Last reply
                    0
                    • N Nish Nishant

                      Hey guys I am working on a set of UI guidelines for designing dialog boxes. I have a few tips ready already. But I am looking for several more. Your suggestions are welcome Dialog boxes 1. All dialog boxes will have a CANCEL button, and when the user clicks the CANCEL button the dialog will be dismissed without any changes being applied 2. Pressing ESCAPE when a dialog box is active will have the same effect as clicking the CANCEL button 3. On Windows based systems, the dialog will have a Close button [X} in the title bar which will duplicate the behaviour of the CANCEL button 4. All dialog boxes will have an OK button and when the user clicks the OK button, the dialog will be dismissed and all changes will be applied 5. Pressing ENTER on a dialog box will have the same effect as clicking on the OK button, except when the focus is on a multi-line edit box 6. The size of the dialog box will be such that it will fit within the screen on the lowest target resolution which by default is fixed as 640 x 480. Depending on the target requirements this default may be raised or lowered. 7. Dialog boxes that accept data entry should be modal. 8. Ideally there should not be more than 10 data entry fields on a dialog box, inclusive of edit boxes, combo boxes, list boxes, check boxes and radio buttons. Text fields are not counted. Under special situations where it is absolutely necessary that there will be more than 10 data entry fields in a dialog, they should be arranged in logical groups using group boxes. 9. The tab order should be sequential and logical. Random jumping of tabs is strictly not allowed. Nish


                      Author of the romantic comedy Summer Love and Some more Cricket [New Win] Review by Shog9 Click here for review[NW]

                      J Offline
                      J Offline
                      James R Twine
                      wrote on last edited by
                      #50

                      A few more...    If you use color as part of your interface, like using Green test for informational messages and Red for errors, make the colors selectable by the user!  Many developers forget that some users are colorblind, and others may be using a red or green color as their background color.    If you have a drop-down combobox, make sure to adjust it's dropped width as required.    When showing MessageBoxes to confirm an action with MB_OKCANCEL, MB_YESNO, MB_YESNOCANCEL, etc, make sure to default the "safe" choice.  This one is forgotten most often.  For example, if you are asking the user to confirm a delete action with a message like "Are you sure you want to delete this item? This action cannot be undone!", and are using a MB_YESNO MessageBox, the [No] button should be the default button.    Peace! -=- James. "There is nothing worse than being oblivious to the fact that you do not know what you are doing." [Get Check Favorites 1.4 Now!]

                      M 1 Reply Last reply
                      0
                      • N NormDroid

                        Have you checked the Windows User Interface Guidlines. Normski. - Professional Windows Programmer

                        J Offline
                        J Offline
                        James R Twine
                        wrote on last edited by
                        #51

                        Perhaps try searching for "Official Guidelines for User Interface Developers and Designers", or for "The Windows User Experience" instead...  That is the new name for the book.    Peace! -=- James. "There is nothing worse than being oblivious to the fact that you do not know what you are doing." [Get Check Favorites 1.4 Now!]

                        1 Reply Last reply
                        0
                        • J James R Twine

                          A few more...    If you use color as part of your interface, like using Green test for informational messages and Red for errors, make the colors selectable by the user!  Many developers forget that some users are colorblind, and others may be using a red or green color as their background color.    If you have a drop-down combobox, make sure to adjust it's dropped width as required.    When showing MessageBoxes to confirm an action with MB_OKCANCEL, MB_YESNO, MB_YESNOCANCEL, etc, make sure to default the "safe" choice.  This one is forgotten most often.  For example, if you are asking the user to confirm a delete action with a message like "Are you sure you want to delete this item? This action cannot be undone!", and are using a MB_YESNO MessageBox, the [No] button should be the default button.    Peace! -=- James. "There is nothing worse than being oblivious to the fact that you do not know what you are doing." [Get Check Favorites 1.4 Now!]

                          M Offline
                          M Offline
                          Michael P Butler
                          wrote on last edited by
                          #52

                          James R. Twine wrote: make sure to default the "safe" choice. This one is forgotten most often. I'll hold my hand up to that one, it is one of my most common mistakes. Luckily I don't do any "dangerous" applications. "Launch Nuclear Missile at Iraq YES No" :~ Michael :-) Look, try and use your intelligence, man, even if you are a politician. - The Doctor

                          J 1 Reply Last reply
                          0
                          • M Michael P Butler

                            James R. Twine wrote: make sure to default the "safe" choice. This one is forgotten most often. I'll hold my hand up to that one, it is one of my most common mistakes. Luckily I don't do any "dangerous" applications. "Launch Nuclear Missile at Iraq YES No" :~ Michael :-) Look, try and use your intelligence, man, even if you are a politician. - The Doctor

                            J Offline
                            J Offline
                            James R Twine
                            wrote on last edited by
                            #53

                            Michael P Butler wrote: Look, try and use your intelligence, man, even if you are a politician. - The Doctor     :eek: Sweet!  Another _Who_vian (or Apprentice Time Lord)! :-D    Peace! -=- James. "There is nothing worse than being oblivious to the fact that you do not know what you are doing." [Get Check Favorites 1.4 Now!]

                            M 1 Reply Last reply
                            0
                            • N Nish Nishant

                              Hey guys I am working on a set of UI guidelines for designing dialog boxes. I have a few tips ready already. But I am looking for several more. Your suggestions are welcome Dialog boxes 1. All dialog boxes will have a CANCEL button, and when the user clicks the CANCEL button the dialog will be dismissed without any changes being applied 2. Pressing ESCAPE when a dialog box is active will have the same effect as clicking the CANCEL button 3. On Windows based systems, the dialog will have a Close button [X} in the title bar which will duplicate the behaviour of the CANCEL button 4. All dialog boxes will have an OK button and when the user clicks the OK button, the dialog will be dismissed and all changes will be applied 5. Pressing ENTER on a dialog box will have the same effect as clicking on the OK button, except when the focus is on a multi-line edit box 6. The size of the dialog box will be such that it will fit within the screen on the lowest target resolution which by default is fixed as 640 x 480. Depending on the target requirements this default may be raised or lowered. 7. Dialog boxes that accept data entry should be modal. 8. Ideally there should not be more than 10 data entry fields on a dialog box, inclusive of edit boxes, combo boxes, list boxes, check boxes and radio buttons. Text fields are not counted. Under special situations where it is absolutely necessary that there will be more than 10 data entry fields in a dialog, they should be arranged in logical groups using group boxes. 9. The tab order should be sequential and logical. Random jumping of tabs is strictly not allowed. Nish


                              Author of the romantic comedy Summer Love and Some more Cricket [New Win] Review by Shog9 Click here for review[NW]

                              S Offline
                              S Offline
                              Shog9 0
                              wrote on last edited by
                              #54

                              Wow, what a great thread. One of those few threads that makes me sad i don't have the time to spend all day posting to, ranting in outrage at others' opinions. The one guideline i'm going to comment on, as several other people have already, is #6: Nishant S wrote: 6. The size of the dialog box will be such that it will fit within the screen on the lowest target resolution which by default is fixed as 640 x 480. Depending on the target requirements this default may be raised or lowered. Instead, i would say:

                              6. The minimum size of the dialog box will be less than the miniumum target screen resolution. This minimum size will be enforced regardless of font size and border settings - the dialog controls must be adjusted or re-arranged to accomidate such preference changes. If the dialog contains scrollable controls such as list boxes, multi-line edit controls, tree controls, etc. then it MUST be resizeable.

                              And to refine this, i would also add:

                              6a. All resizeable dialogs will display appropriate controls to indicate how they may be resized:

                              • a thick vertical border if the dialog can be resized horizontally
                              • a thick horizontal border if the dialog can be resized vertically
                              • a gripper at lower-right if the dialog can be resized diagonally
                              • a maximize button if the dialog can be resized to fill the screen
                              • a minimize button if the dialog can be iconized.

                              And finally:

                              6b. If a minimize feature is added to a modal dialog, it must minimize the entire application, so users are not presented with a disabled application window.

                              --------

                              PMGRE

                              --Shog9 --

                              1 Reply Last reply
                              0
                              • J James R Twine

                                Michael P Butler wrote: Look, try and use your intelligence, man, even if you are a politician. - The Doctor     :eek: Sweet!  Another _Who_vian (or Apprentice Time Lord)! :-D    Peace! -=- James. "There is nothing worse than being oblivious to the fact that you do not know what you are doing." [Get Check Favorites 1.4 Now!]

                                M Offline
                                M Offline
                                Michael P Butler
                                wrote on last edited by
                                #55

                                James R. Twine wrote: Sweet! Another Whovian (or Apprentice Time Lord)! I've been a fan since the 70's. Not one of those hard core continuity nuts but one who enjoys a good adventure story with a touch of sci-fi. Michael :-) Look, try and use your intelligence, man, even if you are a politician. - The Doctor

                                1 Reply Last reply
                                0
                                Reply
                                • Reply as topic
                                Log in to reply
                                • Oldest to Newest
                                • Newest to Oldest
                                • Most Votes


                                • Login

                                • Don't have an account? Register

                                • Login or register to search.
                                • First post
                                  Last post
                                0
                                • Categories
                                • Recent
                                • Tags
                                • Popular
                                • World
                                • Users
                                • Groups