15 мая 2023 года "Исходники.РУ" отмечают своё 23-летие!
Поздравляем всех причастных и неравнодушных с этим событием!
И огромное спасибо всем, кто был и остаётся с нами все эти годы!

Главная Форум Журнал Wiki DRKB Discuz!ML Помощь проекту




Многолинейная гистограмма


Автор: Yuheng Zhao.

 

Скачать исходник - 4Kb

Скачать пример - 95Kb

Элемент управления очень похож на график загруженности процессора. Только в данном случе показывется несколько пораметров. Но основная цель этого примера показать - как использовать собственные элементы управления в с своём приложении.

Пример создавался и компилоровался в Visual C++ 5.0 SP3 под Windows 98.

Как пользоваться

1. Используйте редактор ресурсов MS Visual C++ для того, чтобы добавить в диалог собственный элемент управления, а имени Класса(Class name) введите "LINE_CHART_CTRL".

2. Добавьте в заголовочный файл:

#include "LineChartCtrl.h"
...
CLineChartCtrl m_wndLineChart;

3. Объявите подкласс этого класса в InitDialog()

//IDC_LINE_CHART_CTRL это ID элемента управления 
m_wndLineChart.SubclassDlgItem(IDC_LINE_CHART_CTRL, this);

4. Инициализируем элемент управления

m_wndLineChart.Add(RGB(0,255,0),100, 0);
m_wndLineChart.Add(RGB(255,255,0),100, 0);
m_wndLineChart.Add(RGB(0,255,255),100, 0);

SetTimer(1, 500, NULL); // Создаём таймер для обновления элемента управления

5. Добавляем код обновления в OnTimer(UINT nIDEvent)

m_wndLineChart.SetPos(0,nPos0); // nPos0 это текущая позиция
m_wndLineChart.SetPos(1,nPos1); // nPos1 это текущая позиция
m_wndLineChart.SetPos(2,nPos2); // nPos2 это текущая позиция
m_wndLineChart.Go(); // обновляем элемент управления с новыми значениями