一.加消息
1. public INotifyUI,
2. void Notify(TNotifyUI& msg);
3. Notify实现
4. m_pManager->AddNotifier(this);
二.刷新
void CControlUI::NeedUpdate()
{
if( !IsVisible() ) return;
m_bUpdateNeeded = true;
Invalidate();
if( m_pManager != NULL ) m_pManager->NeedUpdate();
}
三.另一种加消息
1. DECLARE_MESSAGE_MAP()也就是#define DECLARE_MESSAGE_MAP() virtual bool InitMessageMap(TNotifyUI *pMsg = NULL);
2.BEGIN_MESSAGE_MAP(CTableWebPageUI)
ON_COMMAND(m_pBtnRefresh, OnBtnRefresh)
END_MESSAGE_MAP()
3. InitMessageMap();
四.
1.显示隐藏就用bool值作为参数就好。
2.CContainerUI可以 pControl =(CContainerUI*)Builder.Create(_T("XX.xml"),Add(pControl);
3.一个btn对应一个网页
4.你可以用AddPage或Add
5.网页浏览的xml不应该和别的xml搀和。如:layWebPageWithUrlBar、layLoading、layErrorPage
6.获取控件rect RECT& CControlUI::GetPos()
7.解析xml可生成CControlUI*也可强转成CContainerUI *
8.pm通常CControlUI* pControl = FindControl(pt);而控件通常CLabelUI* pLabelSpeedNum = (CLabelUI*)pAcceleratorCon->FindSubControlEx(_T("btnSpeedUpNum"));
9.有句柄的窗口通常在xml布局窗口的上面,所以可以通过xml布局获取rc,然后设置句柄窗口位置。
10.报没有可用的构造函数竟然是没包含相应的头文件。
11.SetPos和SetVisible都要设置句柄窗口的位置,防止在隐藏位置发生变化,显示时位置不对。
12.vc助手下面一个框选择类,再选择方法,定位代码非常方便。
13.可以把常用的搜索位置如:skin放到搜索框中。
独立进程
1.CDll管理dll。加载,释放。