7.1 托盘图标
<h2>1 属性和相关方法</h2>
<h4>1.1 设置托盘图标</h4>
<p>给对话框添加相应的xml属性或者调用相应的方法即可给对话框设置对应的托盘图片。</p>
<ul>
<li>通过XML属性添加如下:</li>
</ul>
<pre><code class="language-xml">TrayMenu=&quot;MainMenu.xml&quot;</code></pre>
<ul>
<li>通过C++程序代码调用方法添加如下:</li>
</ul>
<pre><code class="language-c">void SetTrayMenu(const tstring&amp; strMenu);</code></pre>
<h4>1.2 修改托盘图标</h4>
<ul>
<li>通过C++程序代码调用方法如下:</li>
</ul>
<pre><code class="language-c">void ModifyTrayIcon(const tstring&amp; strTips, HICON hIcon = NULL);</code></pre>
<h4>1.3 闪烁托盘图标</h4>
<ul>
<li>通过C++程序代码调用方法如下:</li>
</ul>
<pre><code class="language-c">void FlashTrayIcon(BOOL bFlash);
BOOL IsTrayIconFlashing();</code></pre>
<h4>参考下面的示例代码</h4>
<pre><code class="language-c">void CMainDialog::OnBtnClickedFlashTrayIcon(UINT uNotifyCode, int nID, CSkinView* pView)
{
CSkinView* pChildView = pView-&gt;GetChildById(100001);
if(pChildView)
{
tstring strFlash = SkinUI::GetString(_T(&quot;IDS_FLASH_TRAY_ICON&quot;));
tstring strStopFlash = SkinUI::GetString(_T(&quot;IDS_STOP_FLASH_TRAY_ICON&quot;));
if(pChildView-&gt;GetText() == strFlash)
{
FlashTrayIcon(TRUE);
pChildView-&gt;SetText(strStopFlash);
pView-&gt;RedrawView();
}
else if(pChildView-&gt;GetText() == strStopFlash)
{
FlashTrayIcon(FALSE);
pChildView-&gt;SetText(strFlash);
pView-&gt;RedrawView();
}
else
{
assert(false);
}
}
}</code></pre>