I am building a simple tool which accepts a URL, a username and a password. The URL contains one or more sets of data. After the users enters the URL, username and password. The tool then retrieves the list of data sets from the URL. The user then has to chose one of the items of the list. And then user clicks on a "Do Stuff" button where by the tool does some operation on the URL based on the item chosen by the user.

Now, I have made this is a simple window which looks like this ([ ] --> A text box)

URL [                ]  
UserName [             ] Password [         ]

I pre populate the URL with a default value but it is user changeable. Below this, I need to have a combo box where the user can chose from the list, but I can create this only after the URL, UserName and Password have been filled up by the user. So my idea is to have below the UserName Line

[Get List button] [Empty ComboBox]

Once the user clicks on the Get List button, I fill up the Combo Box with the Choices and then user chooses one of them.

Finally at the bottom, I will have a "Do Work" button.

My questions are

  1. Is the Button and the Empty Combo Box a good way to do this or is there a more intuitive way?

  2. It's not obvious that the user needs to chose something from the combo box after he clicks on the GetList button. What can I do to make this better?

  3. Also sometimes the list may just have one item, so the Combo Box may feel strange with just one item. Should I then make the combobox invisible and replace it with a Label which shows the item name? Should I start originally (before he clicks on the Get List button) with a ComboBox or a Label or nothing at all?

  • 1
    Just a FYI: you can use the wireframe prototyping tool to sketch out interfaces. It makes visualizing your design much easier.
    – mginn
    May 5, 2015 at 13:03
  • What is the use case for this? Why do the users supply URL's? Are the data sets a known or unknown quantity? What does the app do? May 5, 2015 at 13:10
  • @DarrylGodden - This is a tool to do some changes on a server. The changes are done by calling a webservice on a server. The URL is the URL of the webservice. The user may have multiple servers - hence he has to provide the URL.
    – user93353
    May 5, 2015 at 13:20
  • @DarrylGodden - I don't understand your question about the data sets
    – user93353
    May 5, 2015 at 13:21
  • If the data sets are a known quantity or value, could they not be added in a more friendly way? With a friendlier name than a URL? May 5, 2015 at 13:26

4 Answers 4


I have tried to visualize after going through the problem statement.

In your use case, there are important things missing. Those are the feedback from system. For example, after entering the URL, username and password, there must be confirmation to user, that he/she has been logged in. And ready to fetch the data from the server.

I do not agree with proposal for combo box. Instead, propose to use a tabular display with radio button. As that's what you are doing with the combo box. But there is no visual indication that user need to choose as the data has been populated.

I have tried to put all the points in form of wireframe below. Hope this answers. The sections , 1, 2 and 3 can be different windows, or stages.

enter image description here


I would suggest using something similar to Google Analytics - Goal Creation page.


download bmml source – Wireframes created with Balsamiq Mockups

This way the user doesn't have to click on the "get list" button, making it easier to use and process.


I think you're over-complicating things. I'm suffering myself with the convoluted ways sys admins use to identify web services, so I have a list of server1, server2, server3, server627277277, server[N].

And it seems you're going the same convoluted path.

Of course, this causes many issues. The most common one happens when the user forgets which server is the one he needs to work with, and has to search for the login info somewhere. Or even worse, request a new user/pass. Really frustrating.

Instead, try this:

1. Make the user log in using their username and password
2. Once logged, display the list of servers they currently own
3. Once the user selects a server, display the set of available actions. You can do this in a variety of ways, which will depend on your layout and content (modals, dialogs, expanding divs, whatever). Make sure this element has a way to close.

And that's the gist of it, using the KISS rule: straight to the point flow, no ambiguity, no alternate options, no need to look for info, no need to worry about layouts based on available data.

  • Different servers have different username/passwords. So this can't work.
    – user93353
    May 5, 2015 at 18:59
  • 1
    OK, then add an user login and then a "per server" login if needed, although one super admin usually connects to any server under his/her account and this should suffice. "Per server" logins should be enabled only when teh super admin wants to add another user. Again, try to simplify, this is too complex for such a simple process
    – Devin
    May 5, 2015 at 19:14

My suggestions are on the same line with others, just with minor differences.

  1. Empty Combo Box kept along with Button (and if this empty Combo box does not fill unless button is hit), is definitely not good way to show. If your intention behind keeping this combo box in order to convey the user that the results will be populated in this and he/she needs to choose from this, then instead of this keep a simple text after the button as 'and select a Choice to Do stuff from results available'
  2. The interaction you want to show for the user to chose something from the combo box after he clicks on the GetList button is not common and obvious enough. Whether to user combo box also depends on the number of results you are expecting system to generate. Showing choices rows with action buttons make it more obvious. (If radio buttons are used, then for single result, single radio button looks odd)
  3. I agree with you on 3rd point. Keeping only one result in combo box (and even for radio buttons) makes it look strange. So button for each record might work here. This makes it flexible enough instead of showing only label. enter image description here

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.