12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182 |
- #include "stdafx.h"
- #include "ButtonGroup.h"
- #include ".\weak_business_ctrl\GoodsDlg.h"
- IMPLEMENT_DYNAMIC(CButtonGroup, CWnd)
- CButtonGroup::CButtonGroup(void):
- maxColumn(6)
- ,xAlign(10)
- ,yAlign(10)
- ,width(176)
- ,height(113)
- ,x(50)
- ,y(50)
- ,groupIndex(0)
- ,type(0)
- {
- }
- CButtonGroup::~CButtonGroup(void)
- {
- for (size_t i = 0; i < pButtons.size(); i++)
- {
- delete(pButtons[i]);
- pButtons[i] = NULL;
- }
- }
- void CButtonGroup::addButton(CString name, UINT nID)
- {
- CMyButton* pBtn = new CMyButton;
- pButtons.push_back(pBtn);
- CString str;
- str.Format("%d",pButtons.size());
- pBtn->Create("a",WS_CHILD|WS_VISIBLE|BS_OWNERDRAW,getCurRect(pButtons.size()-1),pParent,nID);
- pBtn->name = name;
- pBtn->index = pButtons.size() - 1;
- pBtn->type = type;
- pBtn->pParent = this;
- row = pButtons.size() / maxColumn + 1;
- if (pButtons.size() % maxColumn == 0)
- {
- row -= 1;
- }
- column = maxColumn;
- }
- void CButtonGroup::changeButtonInfo(UINT index, CString name, CString otherInfo)
- {
- pButtons[index]->name = name;
- pButtons[index]->strInfo = otherInfo;
- ::SendMessage(pButtons[index]->m_hWnd,WM_PAINT,(LPARAM)0,(WPARAM)0);
- }
- void CButtonGroup::handleClick(UINT index)
- {
- UINT i = groupIndex;
- pParent->SendMessage(WM_BUTTONGROUP_MSG,groupIndex,index);
- if (type == 1)
- {
- for (size_t i = 0; i < pButtons.size(); i++)
- {
- if (i == index)
- {
- pButtons[i]->changeColor(TRUE);
- }
- else
- {
- pButtons[i]->changeColor(FALSE);
- }
- }
- }
- }
- void CButtonGroup::DrawItem(LPDRAWITEMSTRUCT lpDrawItemStruct)
- {
- }
|