首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 更多程式語言 >> 程式設計綜合問答

VC++ 調用 NTGraph 控件畫圖:專案配置與代碼集成要點

     編輯:程式設計綜合問答

集成步驟

  1. 註冊控件:`regsvr32 NTGraph.ocx`(管理員運行)。
  2. MFC 對話框專案 → 資源視圖 → 右鍵「插入 ActiveX 控件」→ 選 `NTGraph` → 生成包裝類 `CNTGraphCtrl`。
  3. 在 `OnInitDialog` 初始化數據源、坐標軸、系列屬性。

關鍵代碼片段


void CMyDlg::OnInitDialog() {
    CDialogEx::OnInitDialog();
    // 三角波示例
    for (int xx = 0; xx < 1000; xx += 10) {
        if ((xx/10) % 2) m_Graph.PlotXY(xx, 20, 1);
        else m_Graph.PlotXY(xx, 40, 1);
    }
}

// 業務數據綁定
void CMyDlg::PlotData(const std::vector& y) {
    m_Graph.Clear();
    for (size_t i = 0; i < y.size(); ++i) {
        m_Graph.PlotXY(i * 10, y[i], 1); // 系列 1
    }
}

常見坑

  • 控件未註冊或位元數不匹配(x64 進程載入 x86 OCX 失敗)。
  • 專案屬性 → 鏈接器 → 清單文件 → 隔離清單,確保 ActiveX 託管正確。
  • 數據量大時用 `PlotXY` 逐點慢,改用 `SetPlotData` 批量設置(需查閱控件文檔)。
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved