Hello everyone.

I have seen in quite a few programs, a menu that is actually scrollable. Not a scroll-bar (that can be implemented on a window via the WS_HSCROLL|ES_AUTOHSCROLL flags) but a scroller menu.

The menu I am reffering to is often seen inside of windows folders, where the menu would be displayed as follows:

"Name of File " | "Date Modified" | "Type" | "Size |

A person can click in between those menu items, and scroll them left and right, making one bigger, and another smaller.

Another example of the type of menu I am talking about, can be seen inside of peeer-to-peer programs (P2P), such as Napster, Limewire, etc, where the list would read as follows:

"Title " | "Artist | "Media Type" | "Size" | "File Name"

The little bars that appear between the menu items (signified by the | symbol in the example above) can be clicked on, and scrolled either to the left, or the right, to reveal the contents of one menu item over another. The scroller handles are used to make one menu inside of the list larger than the others.

Lets say the full title of a song was not displayed, but was rather covered by the artist's name instead. To see the FULL title of the song, one would "expand" the title column by scrolling on the artist menu item (to the right, so as to reveal what is on the left of it), until the full title of the song was visible.

It's obvious that there is already some sort of function or flag that creates such a scroller menu (as I have seen the exact same menu in many programs already), but I do not know how to code such a thing.

Does anyone know what functions I would use to implement such a scroller bar, inside of one of my Win32 programs?

Your help will be much appreciated.

I don't know how to do it, but you may want to check your terminology. What you are referring to are "resizable" (not scrollable) columns as in an Excel spreadsheet. I would check the class(es) used for the columns to see if there is a resizable (or other similarly named) flag/member that you can change the value of to unlock them and allow the user to do that.

Thank you. (I'd like to mention also that I do not even know how to make columns using win32, let alone make them "resizable".)