首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> C語言 >> VC >> VC 教學

VC++ 使用 DBGrid 控制項顯示 Access 資料完整教學

     編輯:VC 教學

環境準備

  1. Access 建立 `mydata.mdb`,資料表 `users(username, address, email)`。
  2. 控制台 → ODBC 系統 DSN 新增 `test` 指向 `mydata.mdb`。

專案建立

  1. MFC AppWizard (exe) → Dialog based → 專案名 `GridTest` → 勾選 **ActiveX Controls** 支援。
  2. 專案 → Add to Project → Components and Controls → Registered ActiveX Controls:
    插入 **Microsoft RemoteData Control** (類別 `CMSRemoteDataControl`)
    插入 **DBGrid Control** (類別 `CDBGrid`)。

對話框佈局

資源編輯器拖放兩個控制項:`IDC_REMOTEDATACTL1` (RemoteData)、`IDC_DBGRID1` (DBGrid)。

屬性設定 (設計模式右鍵 Properties)

RemoteData Control

  • **Control** 分頁:Data Source → `test` (DSN 名稱)
  • **SQL** 分頁:`SELECT * FROM users`

DBGrid Control

  • **All** 分頁:DataSource → `IDC_REMOTEDATACTL1` (RemoteData 的 ID)

執行前注意

  • 關閉 Access 佔用 `.mdb`,否則「無法鎖定檔案」錯誤。
  • 編譯執行即見資料網格自動顯示,支援捲動、排序、編輯 (若 Recordset 允許)。

程式碼控制 (可選)


// 動態切換 SQL
m_remoteData.SetSQL(_T("SELECT * FROM users WHERE email LIKE '%@gmail.com'"));
m_remoteData.Refresh(); // DBGrid 自動更新

常見問題

現象原因/解決
設計模式無法插入控制項未勾選 AppWizard Step 2 的 ActiveX 支援
運行時空白DSN 名稱拼寫錯誤、SQL 語法錯誤、Access 檔案被獨佔
欄位順序錯亂DBGrid 欄位集合可在屬性頁手動排序或程式碼 `Columns` 集合調整
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved