Where is the example ?
I Asked for a small example ...
Not a complete program but enough to show how it could be used in a real program
Main Topics
Browse All TopicsWhen using CreateWindow , the first classname could be like "button" or "static". When using the "listbox" it should be able to make a drop down listbox..
How do i fill this listbox with variables ?
How do i get the ID of what i clicked on ?
I want a small example to try on and i want some small comments.
It should be written in c .. Perhaps a little switch statement ?
Thanks in advance Abbe
This Question has been solved and asker verified All Experts Exchange premium technology solutions are available to subscription members.
Experts Exchange has been collecting answers to technology questions since 1996…3 million and counting! If you have a question, chances are we already have your answer.
If you can't find the exact answer you're looking for, ask our exclusive community of 50,000 experts. You’ll get a personalized answer from a trusted professional.
Thousands of free tech tips, tricks, how-to’s and tutorials are available in our peer reviewed articles section. See for yourself how smart our experts are, no login required.
Access the answers to your technology questions today.
30-day free trial. Register in 60 seconds.
Members of the expert community talk about why the experience at Experts Exchange is different than what you will find anywhere else.

Try it out and discover for yourself.
30-day free trial. Register in 60 seconds.
Join the community of experts here and help other tech pros by answering question in your area of expertise. You can earn FREE access to all Experts Exchange's premium features and resources.
you are talking about a drop down "listbox".
are you meaning a drop down "combobox" ?
it is a static area above a popup list using an arrow
button ?
In that case, you can take a look at the WIN32\FONTVIEW
VC++ sample and the TOOLS.C file
If you are looking for real plain listboxes, here are some
good VC++ samples :
WIN32\PRINTER enumport.c, getcaps.c
WIN32\TTFONTS dialog.c
WIN32\REGISTRY monkey.c
The following is some sample code that should help you. I am writing it by hand without a compiler so I couldn't test it, but I hope you'll be able to make a sense of it. It has comments and some error handling.
/* Declare a static handle for the combo window in the beginning of the source file */
static HWND hMyComboCtrl = NULL;
/* Create the dropdown combobox */
BOOL CreateMyComboCtrl()
{
if (hMyComboCtrl)
return TRUE; /* Already created - resource leak proof */
/* Replace the params between -- */
hMyComboCtrl = CreateWindow("COMBOBOX", --WindowNameStr--, --styleFlags--, --xPos--, --yPos--, --width--, --height--, --hParentWnd--, NULL, --hInstance--, --lpParam--);
if (hMyComboCtrl)
return TRUE;
else
return FALSE;
}
/* To add items */
BOOL InitializeMyComboCtrl()
{
assert(hMyComboCtrl); /* Check if the handle is valid */
LRESULT result = 0;
result |= SendMessage(hMyComboCtrl, LB_ADDSTRING, 0, "item1text");
result |= SendMessage(hMyComboCtrl, LB_ADDSTRING, 0, "item2text");
result |= SendMessage(hMyComboCtrl, LB_ADDSTRING, 0, "item3text");
if (result == LB_ERR || result == LB_ERRSPACE)
return FALSE; /* If any error occurred, return FALSE */
else
return TRUE;
}
int GetMyComboCtrlCurSel()
{
assert(hMyComboCtrl); /* Check if the handle is valid */
return SendMessage(hMyComboCtrl, LB_GETCURSEL, 0, 0);
}
By the way, where are the 300 points? I still see only 200 :)
Davide Marcato.
Hmmm good answer but i need a little bit more ...
The listbox style params which should i use ?
and the final argumet in createwindow lparam havent figure out
how to get it to work...
The |= operator , how does that one work ?
I get the listbox visible but i just cant get the """items""" into it...
Oh by the way is the points 320 and now it must be right or the pointsystem is out of order :)
Let's begin from the last question: no the points are not even 320 - they are 330 if my human viewsystem is still working well :-)
Combobox style: since you want a dropdown combo with a static control showing the currently selected item, I suggest to use CBS_DROPDOWNLIST. I cannot say anything about other combobox-specific and general window styles because I don't have enough info about what you want, anyway the documentation explains them pretty well. In any case, you'll probably want to apply also the window styles WS_VISIBLE and WS_CHILD.
lparam: it is used to pass a pointer to a structure (CREATESTRUCT) that contains creation parameters to the windowproc of the created window. The handling code for WM_CREATE receives a pointer to this structure and can do some initialization if desired.
You don't need to set this parameter in your case - just pass NULL.
operator |= : sintactically the following statements are equivalent:
a = a | b;
a |= b;
Since "|" is the bit-wise OR operator and since the no-error condition in SendMessage() is represented by 0 return value, ORing the return values of 3 subsequent function calls is a compact and readable way to know if *any* of the calls returned an error with only one test in the end!
Hope this answer is exaustive enough...
Davide Marcato.
Business Accounts
Answer for Membership
by: fasterPosted on 1997-08-03 at 18:38:21ID: 1402782
Normally, you can send messages to manipulate the listbox, for example, SendMessage(handle,LB_ADDS TRING,0,"s ome string")
To get the selection, just send LB_GETCURSEL to the listbox with wparam and lparam of 0, the return value is the index of the selected item