Avatar billede alkrojen Nybegynder
19. oktober 2004 - 11:58 Der er 3 kommentarer

Combobox med forkortet drop down list

Hej!
Jeg programmere i Microsoft Visual Embedded C++ 4 til en PDA. Jeg vil gerne oprette en combobox og fylde dens liste med nogle strings. Det gør jeg på følgende måde:

hwndComCarNo = CreateWindow(TEXT("combobox"),
                TEXT(""),                                WS_CHILD | WS_VISIBLE | SS_LEFT |  WS_BORDER | CBS_DROPDOWNLIST,                                    SIDE_MARGIN+SCREEN_WIDTH/3,
        TOP_MARGIN+5*LABEL_HEIGHT+5*LABEL_VSPACE,
        SCREEN_WIDTH-2*SIDE_MARGIN-SCREEN_WIDTH/3,
        COMBOBOX_HEIGHT,
        hWnd,
        (HMENU) 9,
        ((LPCREATESTRUCT) lParam)->hInstance,
        NULL);
           
SendMessage(hwndComCarNo, CB_ADDSTRING, 0, (LPARAM) TEXT("hej1"));
SendMessage(hwndComCarNo, CB_ADDSTRING, 1, (LPARAM) TEXT("hej2"));
SendMessage(hwndComCarNo, CB_ADDSTRING, 2, (LPARAM) TEXT("hej3"));

Problemet er at kun første streng "hej1" vises i drop-down listen når der trykkes på pilen. Hvorfor vises de andre to ikke i listen... de burde da være tilføjet?

mvh.
Allan
Avatar billede bertelbrander Novice
20. oktober 2004 - 00:32 #1
Jeg tror at du skal sætte wParam til 0 (og ikke 0 1 2). I min ældre udgave af MSDN står der at den skal være 0, i online versionen står der bare "This parameter is not used.":
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/shellcc/platform/commctls/comboboxes/comboboxreference/comboboxmessages/cb_addstring.asp

Hvis du vil bestemme position i listen bruger du CB_INSERTSTRING.

Hvad er COMBOBOX_HEIGHT, så vidt jeg ved skal du her angive størrelse på combo boxen når den er foldet ud.
Avatar billede alkrojen Nybegynder
26. oktober 2004 - 10:30 #2
Tak for hjælpen bertelbrander! COMBOBOX_HEIGHT (window height) bestemmer åbenbart hvor mange linier der skal være i drop downlisten, og ikke selve comboboxens højde som først antaget!! Så hvis du lige opretter et svar skal du nok få de 200 point!
Avatar billede bertelbrander Novice
26. oktober 2004 - 20:05 #3
Så vidt jeg ved bestemmer "windows height" hvor stor listen er når den er foldet ud.

Jeg samler ikke på point.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester