?? dlgitems.h
字號(hào):
#ifndef _DLGITEMS_H
#define _DLGITEMS_H
#include "vector"
#define BEGIN_ENUM { for(int e=0; e<lst.size(); e++ )
#define END_ENUM }
class dlgitems
{
typedef std::vector<UINT> id_list;
id_list lst;
CWnd* o;
public:
dlgitems(CWnd *owner):o(owner) {}
void add(UINT id)
{
BEGIN_ENUM
{
if( lst[e] == id )
return;
}
END_ENUM
lst.push_back(id);
}
void remove(UINT id)
{
BEGIN_ENUM
{
if( lst[e] == id )
{
lst.erase(lst.begin()+e);
break;
}
}
END_ENUM
}
void enable()
{
BEGIN_ENUM
{
CWnd* p = o->GetDlgItem(lst[e]);
if( p )
p->EnableWindow(TRUE);
}
END_ENUM
}
void disable()
{
BEGIN_ENUM
{
CWnd* p = o->GetDlgItem(lst[e]);
if( p )
p->EnableWindow(FALSE);
}
END_ENUM
}
void show()
{
BEGIN_ENUM
{
CWnd* p = o->GetDlgItem(lst[e]);
if( p )
p->ShowWindow(TRUE);
}
END_ENUM
}
void hide()
{
BEGIN_ENUM
{
CWnd* p = o->GetDlgItem(lst[e]);
if( p )
p->ShowWindow(FALSE);
}
END_ENUM
}
};
static void disable(HWND wnd){ EnableWindow(wnd, FALSE);}
static void enable(HWND wnd){ EnableWindow(wnd, TRUE);}
template<class T>
static void enum_dlgitems(HWND owner, T op)
{
if( !IsWindow(owner) )
return;
HWND sub = GetWindow(owner, GW_CHILD);
while( IsWindow(sub) )
{
HWND subsub = GetWindow(sub, GW_CHILD);
if( IsWindow(subsub) )
enum_dlgitems(sub, op);
op(sub);
sub = GetWindow(sub, GW_HWNDNEXT);
}
}
#endif // _DLGITEMS_H
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號(hào)
Ctrl + =
減小字號(hào)
Ctrl + -