1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50
|
static UINT indicators[] =
{
ID_SEPARATOR, // status line indicator
ID_INDICATOR_CONNECTTOEMULE,
// ID_INDICATOR_CAPS,
// ID_INDICATOR_NUM,
// ID_INDICATOR_SCRL,
};
int CMainFrame::CreateStatusBar()
{
// Create Status Bar with Font style
CFont *m_Font = new CFont;
LOGFONT lfLogFont;
memset(&lfLogFont, 0, sizeof(lfLogFont));
lfLogFont.lfHeight = 12; // 13-pixel-height
lfLogFont.lfWeight = FW_BOLD; // Bold
strcpy(lfLogFont.lfFaceName, "Verdana"); // Verdana
m_Font->CreateFontIndirect(&lfLogFont);
if (!m_wndStatusBar.CreateEx(this, SBT_TOOLTIPS | SBARS_SIZEGRIP) ||
!m_wndStatusBar.SetIndicators( indicators, sizeof(indicators)/sizeof(UINT) ) )
{
TRACE0("Failed to create status bar\n");
return -1; // fail to create
}
m_wndStatusBar.SetFont( m_Font, TRUE );
m_wndStatusBar.SetPaneInfo( 1, ID_INDICATOR_CONNECTTOEMULE, SBPS_NOBORDERS, 15 );
CStatusBarCtrl* StatusBarCtrl = &m_wndStatusBar.GetStatusBarCtrl();
CRect PaneRect;
StatusBarCtrl->GetRect( 1, PaneRect );
StatusBarCtrl->SetMinHeight( PaneRect.Height() + 20 );
ULONG_PTR uResIcon;
CString strStatusTip;
if ( EmuleLinkInjectVariableApp->bConnectToEmuleState )
{
uResIcon = IDI_CONNECT;
strStatusTip = "Connect to Emule";
}
else
{
uResIcon = IDI_DICONNECT;
strStatusTip = "DisConnect to Emule";
}
HICON m_hIconConnect = (HICON)::LoadImage(AfxGetApp()->m_hInstance, MAKEINTRESOURCE(uResIcon), IMAGE_ICON, 16, 16, 0);
StatusBarCtrl->SetIcon( 1, m_hIconConnect );
StatusBarCtrl->SetTipText( 1, strStatusTip );
return 0;
}
|
Partager