int PASCAL ApplyWinMain(HINSTANCE hInstance) { INITCOMMONCONTROLSEX icc; WNDCLASSEX wcx; icc.dwSize = sizeof(icc); icc.dwICC = ICC_WIN95_CLASSES; InitCommonControlsEx(&icc); InitCheckedListBox(hInstance); if(0 == ghInstance) { ghInstance = hInstance; /* Get system dialog information */ wcx.cbSize = sizeof(wcx); if (!GetClassInfoEx(NULL, MAKEINTRESOURCE(32770), &wcx)) return 0; /* Add our own stuff */ wcx.hInstance = hInstance; // wcx.hIcon = LoadIcon(hInstance, MAKEINTRESOURCE(IDR_ICO_MAIN)); wcx.lpszClassName = _T("CheckedCClass"); if (!RegisterClassEx(&wcx)) return 0; } /* The user interface is a modal dialog box */ return DialogBox(hInstance, MAKEINTRESOURCE(IDD_DLGSEGMEN), NULL, (DLGPROC)Main_Apply_DlgProc); }
LRESULT CALLBACK ApplyDlgProc (HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam) { static HWND hListBox=0; switch (message) { HANDLE_MSG (hwnd, WM_SIZE, Main_OnSize); HANDLE_MSG (hwnd, WM_CTLCOLORLISTBOX, Main_OnCtlColorListbox); HANDLE_MSG (hwnd, WM_COMMAND, Main_OnCommand); case WM_INITDIALOG: { int i = 0; for(i = 0; i < 3; i++) { CreateButton(BS_CHECKBOX, "CheckBox", hwnd, 50, 120 + i * 30, 10 * strlen("CheckBox"), 24, 0x100 + i); // CreateButton(BS_CHECKBOX, "CheckBox", hwnd, 50, 150, 50, 24, 3); } INITCOMMONCONTROLSEX icc; WNDCLASSEX wcx; icc.dwSize = sizeof(icc); icc.dwICC = ICC_WIN95_CLASSES; InitCommonControlsEx(&icc); InitCheckedListBox(g_hinstPlugin); // hListBox = CreateWindow("ListBox", // NULL, // WS_VISIBLE |WS_CHILDWINDOW |WS_EX_CLIENTEDGE |WS_CHILD|WS_VSCROLL | WS_TABSTOP | LBS_SORT| LBS_NOTIFY | LBS_OWNERDRAWFIXED | LBS_HASSTRINGS, // // LVS_REPORT|WS_CHILD|WS_VISIBLE, // 230, 20, 60, 80, // hwnd, (HMENU)IDC_LIST_SEG, // (HINSTANCE) GetWindowLong(hwnd, GWL_HINSTANCE), // NULL); hListBox = GetDlgItem(hwnd, IDC_LIST_SEGMEN); //ShowWindow(hListBox,SW_SHOW); //SendMessage(hListBox,LB_ADDSTRING ,0,(LPARAM)"你好"); //SendMessage(hListBox,LB_ADDSTRING ,0,(LPARAM)"我好"); //SendMessage(hListBox,LB_ADDSTRING ,0,(LPARAM)"他好"); CheckedListBox_SetFlatStyleChecks(hListBox, TRUE); ListBox_AddString(hListBox,"Ford"); ListBox_AddString(hListBox,"Toyota"); ListBox_AddString(hListBox,"Chevy"); // //return hListBox; break; } //Dlg_Init(hwnd); // case WM_CTLCOLORLISTBOX://ODT_LISTBOX // if((UINT) wParam==0x2000) // { // LPMEASUREITEMSTRUCT lpmis = (LPMEASUREITEMSTRUCT) lParam; // lpmis->itemWidth=400; // lpmis->itemHeight=22; // } // break; // case WM_DRAWITEM: // // if((UINT) wParam==0x2000) // { // LPDRAWITEMSTRUCT pDI=(LPDRAWITEMSTRUCT) lParam; // HBRUSH brsh=CreateSolidBrush(RGB(255-30*pDI->itemID, 128+40*pDI->itemID, 128+40*pDI->itemID));//yellow // FillRect(pDI->hDC,&pDI->rcItem,brsh); // DeleteObject(brsh); // // text // SetBkMode(pDI->hDC,TRANSPARENT); // char szText[260]; // SendMessage(hListBox,LB_GETTEXT,pDI->itemID,(LPARAM)szText); // const DWORD dwStyle = DT_LEFT | DT_SINGLELINE | DT_VCENTER | DT_NOPREFIX | DT_END_ELLIPSIS; // DrawText(pDI->hDC, szText, strlen(szText), &pDI->rcItem, dwStyle); // } // break; // case WM_COMMAND: // { // if(wParam < 0x1000) // { // char szBuf[256] = {0}; // sprintf(szBuf, "wp:%X lp:%X\n", wParam, lParam); // msg(szBuf); // //MessageBox(NULL, szBuf, NULL, 0); // if(BST_CHECKED == IsDlgButtonChecked(hwnd, LOWORD(wParam)) ) // { // CheckDlgButton(hwnd, LOWORD(wParam), BST_UNCHECKED ); // } // else if(BST_UNCHECKED == IsDlgButtonChecked(hwnd, LOWORD(wParam))) // { // CheckDlgButton(hwnd, LOWORD(wParam), BST_CHECKED ); // } // } // switch (LOWORD(wParam)) // { // //相加 // // case IDC_DLGSEG_OK: // //Ssys_Add(hwnd); //相加1 // break; // case IDC_DLGSIG_CANCEL: // break; // } // // } // break; case WM_CLOSE: EndDialog(hwnd,IDOK); break; } return FALSE ; }