Visualizzazione dei risultati da 1 a 2 su 2
  1. #1

    Problema con CListCtrl e CImageList in visual c++ 6

    Salve, questo è il mio primo post nel forum (che mi è stato caldamente consigliato da una mia amica che lo bazzica) quindi saluto tutti gli utenti.

    Ho un problema con cimagelist e clistctrl in visual c++ 6.0

    ho creato un form con una ctrllist alla quale voglio associare un image list
    il codice riportato di seguito non sembra funzionare (non da errore ma non avviene nulla)

    ho dovuto utilizzare i sendmessage per via del fatto che il programma nel quale vado ad inserire questa cosa sfrutta le API e non MFC (non so se si può aggirare l'ostacolo, ma non è questa l'oggetto del messaggio, l'ho scritto solo per giustificare il mancato utilizzo delle funzioni fornite con la classe cimagelist)

    riporto alcune porzioni del codice:


    DICHIARATE COME VARIABILI GLOBALI:

    static CImageList m_ImageListThumb;
    static CImageList *m_pImageList;
    static HIMAGELIST ilmiohandle;
    int m_nSelectedItem;
    HICON miaicona;



    all'interno della callback procedure invocata:

    [omissis]

    h_Immaginiselezionate = GetDlgItem (hDlg, IDC_LIST1);

    [omissis]

    /*Handle different messages from the dialog box*/
    switch (message)
    {
    case WM_INITDIALOG:
    /*Set the initial default values*/
    {
    CheckDlgButton(hDlg,IDC_MODBYTE, 1);
    CheckDlgButton(hDlg,IDC_MODBIT, 0);
    SetDlgItemText(hDlg,IDC_NOMEDIRECTORY, directorydaelaborare);
    SetDlgItemText(hDlg,IDC_LIST, "Nessun file selezionato al momento");

    m_ImageListThumb.Create(THUMBNAIL_WIDTH, THUMBNAIL_HEIGHT, ILC_COLOR24, 0, 1);
    m_pImageList = new CImageList();
    m_pImageList->Create(32, 32, TRUE, 4, 4);
    miaicona = LoadIcon(NULL, IDI_ERROR);
    m_pImageList->Add(miaicona);
    ilmiohandle = m_pImageList->GetSafeHandle();
    SendMessage(h_Immaginiselezionate, TVM_SETIMAGELIST, (UINT)LVSIL_NORMAL, (LPARAM)ilmiohandle);
    }
    eccetera eccetera


    la parte del file di risorse relativo al blocco trattato è riportata di seguito

    BLOCCO DIALOG DISCARDABLE 0, 0, 475, 260
    STYLE WS_CHILD
    FONT 8, "MS Sans Serif"
    BEGIN
    GROUPBOX "",IDC_VISUALIZZA,0,28,475,232
    EDITTEXT IDC_NOMEDIRECTORY,10,6,275,12,ES_AUTOHSCROLL
    GROUPBOX "Modalità trasferimento",IDC_MODALITA,389,0,86,28
    DEFPUSHBUTTON "Execute",IDC_ESECUZIONEELABORAZIONE,423,234,4 5,24
    CONTROL "Byte",IDC_MODBYTE,"Button",BS_AUTORADIOBUTTON |
    WS_GROUP,406,11,30,10
    CONTROL "Bit",IDC_MODBIT,"Button",BS_AUTORADIOBUTTON,441,1 1,29,
    10
    DEFPUSHBUTTON "Seleziona directory",IDC_SELDIR,290,7,96,12
    LISTBOX IDC_LIST,282,34,138,221,LBS_SORT | LBS_MULTIPLESEL |
    LBS_NOINTEGRALHEIGHT | WS_VSCROLL | WS_TABSTOP




    CONTROL "Tutte",IDC_TUTTO,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,
    429,41,36,10
    CONTROL "List1",IDC_LIST1,"SysListView32",LVS_SHOWSELALWAY S |
    LVS_ALIGNLEFT | WS_BORDER | WS_TABSTOP,2,33,146,223

    CONTROL "List2",IDC_LIST2,"SysListView32",WS_BORDER | WS_TABSTOP,
    149,34,130,223
    END



    qualche parere sul perchè non funziona?

    sparate anche molto basso xchè sono molto inesperto nell'utilizzare visual c++ ed in generale alla programmazione di windows.

    grazie in anticipo per l'attenzione (more to come... :-) )

  2. #2

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.