Comments 14
Вот бы тоже самое но вывод загрузки в процентах. Как раз искал себе такое и ничего толкового не нашел....
Вы про загрузку ОЗУ в процентах? Если да, так она есть. Там такой формат: занято/всего Gb ...%
Вы наводите мышку на иконку и видите нагрузку на озу и проц
Можно поменять иконки на колличество процентов например с шагом 25-30%
Можно, Вы абсолютно правы. Когда писал эту программу, решил, что будет удобнее сделать иначе. Изменение цвета, как по мне, воспринимать. А при наведении курсора на иконку вы увидите над ней более подробную информацию. К тому же потребовалось бы больше иконок
Не нужно больше иконок - надо создавать иконки на лету, рисуя на них значение процентов. Неоптимизированный пример кода для создания иконки из текста:
HICON CreateTextIcon( HWND hWnd, int size, TCHAR *szText)
{
HDC hdc = GetDC( hWnd );
HDC hdcMem = CreateCompatibleDC( hdc );
HBITMAP hBitmap = CreateCompatibleBitmap( hdc, size, size );
HBITMAP hBitmapMask = CreateCompatibleBitmap( hdc, size, size );
ReleaseDC( hWnd, hdc );
SelectObject( hdcMem, hBitmap );
HBRUSH brush = CreateSolidBrush( RGB(0,0,0) );
SelectObject( hdcMem, brush );
PatBlt( hdcMem, 0, 0, size, size, PATCOPY );
// Draw percentage
int font_size = lstrlen(szText) < 3 ? size : (3*size)/4;
HFONT hFont = CreateFont( font_size, 0, 0, 0, FW_BOLD, 0, 0, 0, ANSI_CHARSET, 0, 0, 0, 0, TEXT ("Arial") );
HFONT hFont_orig = (HFONT) SelectObject( hdcMem, hFont );
SetBkColor( hdcMem, RGB(0,0,0) );
SetTextColor( hdcMem, RGB(255,255,255) );
RECT rect;
SetRect( &rect, 0, 0, size, size );
DrawText( hdcMem, szText, lstrlen (szText), &rect, DT_CENTER | DT_VCENTER | DT_SINGLELINE );
ICONINFO iconInfo;
iconInfo.fIcon = TRUE;
iconInfo.xHotspot = 0;
iconInfo.yHotspot = 0;
iconInfo.hbmMask = hBitmapMask;
iconInfo.hbmColor = hBitmap;
HICON hIcon = CreateIconIndirect( &iconInfo );
SelectObject( hdcMem, hFont_orig );
DeleteObject( hFont );
DeleteObject( brush );
DeleteObject( hBitmapMask );
DeleteObject( hBitmap );
DeleteDC( hdcMem );
return hIcon;
}
Гляньте HW monitor
Здесь нет С++, везде чистый Си
Наведение на иконку-изначальное зло. Лично я считаю, что надо выводить цифры соответствующими цветами. А вообще подобное насколько помню реализовано в HW monitor.
Идея супер!
В Run-cat - как раз не хватает загрузки оперативной памяти.
А так идея с двумя иконками - вполне удобно. Только что бы без наведения можно было узнавать статус (не важно - в виде процентов или какой-либо анимации, но с цветами - все же тяжелее будет восприятие)
Могу ошибаться, но вроде все это уже есть в том же core temp. Ну и да, лучше мониторинг без наведения мыши, лишние действия.
Прикольно получилось!!
Мониторинг CPU и RAM на панели задач C++