Prev: VB6 application with manifest file
Next: Asking Advice
From: MM on 22 Feb 2010 11:14 I my VB6 Know The Notes app, which I am currently enhancing with extra features, I have been using dropdown comboboxes on one or two forms. Because when one has the alternative, textboxes, one has to do loads of checking, like is it numeric only, what happens in LostFocus/GotFocus, what happens when you select a menu (no LostFocus triggered), range checks etc. The combobox does away with all those since its list contains only valid values, so it is just not possible for the user to select an invalid value. Obviously, there will be plenty of cases where you may need to enter a large value and it won't be possible to have a very large number of possible values preloaded in the combobox, but for data like MIDI data, where many numbers (e.g. Note Number, Velocity) are in the range 0 to 127, it seems as if the combobox is a much better control to use than the textbox. I'm also using typomatic code from the web (Aaron Young) to enhance usability. (This code requires Style = 2 - Dropdown List) What do others think about replacing textboxes with comboboxes like this? MM
From: Dee Earley on 22 Feb 2010 12:14 On 22/02/2010 16:14, MM wrote: > I my VB6 Know The Notes app, which I am currently enhancing with extra > features, I have been using dropdown comboboxes on one or two forms. > Because when one has the alternative, textboxes, one has to do loads > of checking, like is it numeric only, what happens in > LostFocus/GotFocus, what happens when you select a menu (no LostFocus > triggered), range checks etc. The combobox does away with all those > since its list contains only valid values, so it is just not possible > for the user to select an invalid value. > > Obviously, there will be plenty of cases where you may need to enter a > large value and it won't be possible to have a very large number of > possible values preloaded in the combobox, but for data like MIDI > data, where many numbers (e.g. Note Number, Velocity) are in the range > 0 to 127, it seems as if the combobox is a much better control to use > than the textbox. > > I'm also using typomatic code from the web (Aaron Young) to enhance > usability. (This code requires Style = 2 - Dropdown List) > > What do others think about replacing textboxes with comboboxes like > this? It depends entirely in the context and use. If you have a fixed list of itmes (IMO < ~25) then use a combobox. If you want freeform text, a textbox If you want a number, a numberbox (textbox with an updown control). You use what is suitable for the data. -- Dee Earley (dee.earley(a)icode.co.uk) i-Catcher Development Team iCode Systems
From: duke on 22 Feb 2010 12:21 On Feb 22, 9:14 am, MM <kylix...(a)yahoo.co.uk> wrote: > I my VB6 Know The Notes app, which I am currently enhancing with extra > features, I have been using dropdown comboboxes on one or two forms. > Because when one has the alternative, textboxes, one has to do loads > of checking, like is it numeric only, what happens in > LostFocus/GotFocus, what happens when you select a menu (no LostFocus > triggered), range checks etc. The combobox does away with all those > since its list contains only valid values, so it is just not possible > for the user to select an invalid value. > > Obviously, there will be plenty of cases where you may need to enter a > large value and it won't be possible to have a very large number of > possible values preloaded in the combobox, but for data like MIDI > data, where many numbers (e.g. Note Number, Velocity) are in the range > 0 to 127, it seems as if the combobox is a much better control to use > than the textbox. > > I'm also using typomatic code from the web (Aaron Young) to enhance > usability. (This code requires Style = 2 - Dropdown List) > > What do others think about replacing textboxes with comboboxes like > this? > > MM I agree ComboBoxes are great for those things where the choice is clear cut but at the same time it is easy to fall into the trap of creating very lengthy comboboxes that take longer to search and select then it would to provide a TextBox. The best of 2 worlds in my opinion is to have text completion on a combobox similar to what you get when you are using "Google" search on Firefox, Excel, etc.
From: MM on 22 Feb 2010 12:49 On Mon, 22 Feb 2010 09:21:04 -0800 (PST), duke <nospama(a)3web.net> wrote: >On Feb 22, 9:14�am, MM <kylix...(a)yahoo.co.uk> wrote: >> I my VB6 Know The Notes app, which I am currently enhancing with extra >> features, I have been using dropdown comboboxes on one or two forms. >> Because when one has the alternative, textboxes, one has to do loads >> of checking, like is it numeric only, what happens in >> LostFocus/GotFocus, what happens when you select a menu (no LostFocus >> triggered), range checks etc. The combobox does away with all those >> since its list contains only valid values, so it is just not possible >> for the user to select an invalid value. >> >> Obviously, there will be plenty of cases where you may need to enter a >> large value and it won't be possible to have a very large number of >> possible values preloaded in the combobox, but for data like MIDI >> data, where many numbers (e.g. Note Number, Velocity) are in the range >> 0 to 127, it seems as if the combobox is a much better control to use >> than the textbox. >> >> I'm also using typomatic code from the web (Aaron Young) to enhance >> usability. (This code requires Style = 2 - Dropdown List) >> >> What do others think about replacing textboxes with comboboxes like >> this? >> >> MM > >I agree ComboBoxes are great for those things where the choice is >clear cut but at the same time it is easy to fall into the trap of >creating very lengthy comboboxes that take longer to search and select >then it would to provide a TextBox. Well, it depends, I suppose, on what one means with "very lengthy". One of my data fields has the value range 0 through 3000 and the typed in value (in the combobox with typomatic) is found in the list instantaneously. That typomatic code I mentioned uses SendMessage with CB_FINDSTRING so it's very fast. I wouldn't use this appoach for ranges greater than, say, 0 - 10,000, but I'd see first whether it was usable even then. After all, you have to type the WHOLE value into a textbox, but only part of it in the case of a combobox with typomatic operative. >The best of 2 worlds in my opinion is to have text completion on a >combobox similar to what you get when you are using "Google" search on >Firefox, Excel, etc. Using the typomatic code I found (with a minor mod from me) it works just like that. Even the CB with the large-ish range 0 to 3000 is snappily instantaneous. MM
From: MM on 22 Feb 2010 13:07
On Mon, 22 Feb 2010 17:14:26 +0000, Dee Earley <dee.earley(a)icode.co.uk> wrote: >On 22/02/2010 16:14, MM wrote: >> I my VB6 Know The Notes app, which I am currently enhancing with extra >> features, I have been using dropdown comboboxes on one or two forms. >> Because when one has the alternative, textboxes, one has to do loads >> of checking, like is it numeric only, what happens in >> LostFocus/GotFocus, what happens when you select a menu (no LostFocus >> triggered), range checks etc. The combobox does away with all those >> since its list contains only valid values, so it is just not possible >> for the user to select an invalid value. >> >> Obviously, there will be plenty of cases where you may need to enter a >> large value and it won't be possible to have a very large number of >> possible values preloaded in the combobox, but for data like MIDI >> data, where many numbers (e.g. Note Number, Velocity) are in the range >> 0 to 127, it seems as if the combobox is a much better control to use >> than the textbox. >> >> I'm also using typomatic code from the web (Aaron Young) to enhance >> usability. (This code requires Style = 2 - Dropdown List) >> >> What do others think about replacing textboxes with comboboxes like >> this? > >It depends entirely in the context and use. >If you have a fixed list of itmes (IMO < ~25) then use a combobox. What is wrong with a much larger list than 25? Several of my comboboxes have lists of 0 to 127 and one has 0 to 3000. In all cases the number typed (which one would have to type out in full in the case of a textbox) is located instantly in the combobox using the typomatic code I mentioned. >If you want freeform text, a textbox >If you want a number, a numberbox (textbox with an updown control). The UpDown control requires MSCOMCT2.OCX, which may or may not be included as standard on all op systems. Also, it doesn't stop me from typing an invalid value into the associated textbox (unless I provide additional checking code, which I avoid with my combobox implementation). Thirdly, I dislike it intensely, with its miniscule arrows! MM |