Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » VC++ / MFC » Ccomboboxex

Forum | Hilfe | Team | Links | Impressum | > Suche < | Mitglieder | Registrieren | Einloggen
  Quicklinks: MSDN-Online || STL || clib Reference Grundlagen || Literatur || E-Books || Zubehör || > F.A.Q. < || Downloads   

Autor Thread - Seiten: > 1 <
000
15.11.2002, 22:24 Uhr
~SwordMaster
Gast


wie kann ich in meine CcomboboxEx ein bild einbinden??
mein code: (geht nicht)
UpdateData();

test.Create(IDB_BITMAP1, 32, 1, RGB(0,0,0)); //test= CImageList Objekt

m_combo.SetImageList(&test); //m_combo=CComboBoxEx Objekt
UpdateData(FALSE);
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
001
18.11.2002, 00:50 Uhr
Volle



Hallo swordMaster,

ich hatte das Problem selbst noch nicht. Aber ich denke, du musst erstmal ein CImageList- Objekt erzeugen. Das kannst du dann mit SetImageList übergeben.

Was für ein Typ ist eigentlich 'test' in deinem Code?

Gruß, Volle.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
002
18.11.2002, 13:45 Uhr
FloSoft
Medialer Over-Flow
(Administrator)



Zitat:
~SwordMaster postete
test.Create(IDB_BITMAP1, 32, 1, RGB(0,0,0)); //test= CImageList Objekt


--
class God : public ChuckNorris { };
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
003
18.11.2002, 15:12 Uhr
Volle



Hallo zusammen,

das habe ich gestern glatt überlesen, wie peinlich *schäm*...

Na dann würde ich das mal so probieren...

Create mit folgenden Parametern aufrufen:

- Größe der Bitmaps in Pixeln in X- Richtung
- Größe der Bitmaps in Pixeln in Y- Richtung
- Typ (siehe auch MSDN)

Könnte dann so aussehen:


C++:
test.create(32,32, ILC_COLOR);


Danach die Bildchen aus der Resource in die Liste. Z.B. so:


C++:
test.Add(AfxGetApp()->LoadIcon(IDB_BMP1));


In der MSDN steht auch noch ein Beispiel mit LoadBitmap. Und dann halt die Liste mit der Combo verknüpfen:


C++:
m_combo.SetImageList(&test);


Und dann mit m_combo.InsertItem die einzelnen Elemente der Combo einfügen.

Das sollte doch eigentlich gehen, oder?

Wie gesagt habe ich es noch nie ausprobiert. Wenn ich heute noch dazu komme, dann mach ich es aber noch. Das interessiert mich jetzt auch.

Grüße, Volle.

Dieser Post wurde am 18.11.2002 um 15:14 Uhr von Volle editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
004
19.11.2002, 11:49 Uhr
Volle



Hallo zusammen,

vielleicht interessiert sich ja noch jemand für den Code...

Die beiden Funktionen werden in OnInitDialog aufgerufen:


C++:
void CComboExDlg::BuildCombo()
{
    CRect rectBuf(30,30,150,180);
    CString textBuf;
    int intBuf = 0;

    m_comboEx.Create(CBS_DROPDOWNLIST|WS_CHILD|WS_VISIBLE, rectBuf, this, IDC_COMBO_EX);
    m_comboEx.SetImageList(&m_picList);

    COMBOBOXEXITEM itemBuf;
    itemBuf.mask = CBEIF_IMAGE|CBEIF_OVERLAY|CBEIF_SELECTEDIMAGE|CBEIF_TEXT;

    for (int i = 0; i < 5; i++)
    {
        textBuf.Format("Eintrag %u", i+1);

        itemBuf.iItem                = i;
        itemBuf.pszText                = textBuf.GetBuffer(textBuf.GetLength());
        itemBuf.cchTextMax            = 12;
        itemBuf.iImage                = i;
        itemBuf.iSelectedImage        = i;
        itemBuf.iOverlay            = i;

        intBuf = m_comboEx.InsertItem(&itemBuf);
        textBuf.ReleaseBuffer();

        if (intBuf < 0)
            TRACE("Text- Nr. %u nicht in Combo eingefügt...\n", i+1);
        else
            TRACE("Text- Nr. %u an Position %u in Combo eingefügt...\n", i+1, intBuf);
    }
}

void CComboExDlg::BuildPicList()
{
    m_picList.Create(32,32, ILC_COLOR32, 0, 1);

    int intBuf = 0;

    for (int i = 0; i < 5; i++)
    {
        intBuf = m_picList.Add(::LoadIcon(AfxGetInstanceHandle(), MAKEINTRESOURCE(IDR_BMP1+i)));
        TRACE("Icon %u an Position %i in Liste eingefügt...\n", i+1, intBuf);
    }
}


Dabei bin ich auf folgendes Problem gestossen: Ich wollte LoadIcon mit einen CString füttern. Laut MSDN soll das ja auch gehen. Bei mir hat er dann allerdings die Ressourcen nicht mehr gefunden. Hatte das auch schonmal jemand oder weiß jemand, woran das liegt?

Grüß, Volle.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
Seiten: > 1 <     [ VC++ / MFC ]  


ThWBoard 2.73 FloSoft-Edition
© by Paul Baecher & Felix Gonschorek (www.thwboard.de)

Anpassungen des Forums
© by Flo-Soft (www.flo-soft.de)

Sie sind Besucher: