naar aanleiding van dit topic ben een combobox gaan maken met daarin de images, zoals in het topic beschreven.
nu heb ik de code gemaakt en hij geeft ook geen foutmelding, echter de combobox geeft de plaatjes niet weer. hieronder volgt de code:
en dan hieronder de aanroepende code
de bitmaps id's zijn gedeclareerd in de resource files. iemand enig idee waar het fout gaat, of dat ik iets vergeten ben, ik zie het iig echt niet meer...
nu heb ik de code gemaakt en hij geeft ook geen foutmelding, echter de combobox geeft de plaatjes niet weer. hieronder volgt de code:
C++:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
| /************************************************************************** * initialize_image_combobox **************************************************************************/ void initialize_image_combobox( HWND combo_box, HIMAGELIST image_list ) { SendMessage( combo_box, CBEM_SETIMAGELIST, 0, (LPARAM)image_list ); SendMessage( combo_box, CB_SETCURSEL, (WPARAM)0, 0 ); } /************************************************************************** * create_image_combobox **************************************************************************/ HWND create_image_combobox( int count_items, int combo_left, int combo_top, int combo_width, int combo_height ) { INITCOMMONCONTROLSEX control; control.dwSize = sizeof( INITCOMMONCONTROLSEX ); control.dwICC = ICC_USEREX_CLASSES; InitCommonControlsEx( &control ); return CreateWindowEx( 0, WC_COMBOBOXEX, NULL, WS_BORDER | WS_VISIBLE | WS_CHILD | CBS_DROPDOWN, combo_left, combo_top, combo_width, count_items * combo_height, main_window, (HMENU)NULL, current_instance, (LPVOID)NULL ); } |
en dan hieronder de aanroepende code
C++:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
| if ( !( combobox_line_weights = create_image_combobox( 4, 220, 30, 80, 15 ) ) ) { return false; } HIMAGELIST image_list = ImageList_Create( 80, 15, ILC_COLOR24, 3, 0 ); HBITMAP line_weight_1 = LoadBitmap( current_instance, "PID_BITMAP_LINEWEIGHT_1" ); ImageList_Add( image_list, line_weight_1, NULL ); HBITMAP line_weight_2 = LoadBitmap( current_instance, "PID_BITMAP_LINEWEIGHT_2" ); ImageList_Add( image_list, line_weight_2, NULL ); HBITMAP line_weight_3 = LoadBitmap( current_instance, "PID_BITMAP_LINEWEIGHT_3" ); ImageList_Add( image_list, line_weight_3, NULL ); initialize_image_combobox( combobox_line_weights, image_list ); |
de bitmaps id's zijn gedeclareerd in de resource files. iemand enig idee waar het fout gaat, of dat ik iets vergeten ben, ik zie het iig echt niet meer...