vs2012利用MFC開發基於對話方塊的小軟體指南(連線Mysql資料庫)
最近用MFC寫了一個基於對話方塊的小軟體,並且實現了和mysql資料庫的互動。從一點不懂到最後寫出來,費了不少周折,百度谷歌了很多資料,也聽了很多其他人的意見。特寫本篇博文,希望對同樣在設計含介面的小軟體並在學習MFC的朋友提供一定的幫助,你不是一個人。
開發環境:vs2012 mysql5.1 win10x64位作業系統
關於vs2012和mysql資料庫的連結請看我的這篇博文
http://blog.csdn.net/lvshubao1314/article/details/50249955
開啟vs2012,檔案-新建-mfc應用程式-基於對話方塊,然後完成。然後右側工具欄有各種控制元件,拖動到對話方塊,右鍵屬性可以編輯控制元件的名稱,再然後雙擊一個控制元件即可到對應改控制元件繫結程式碼了,效果是點選該控制元件即可執行其繫結程式碼
細節還是見程式碼吧,SetDlgItemText()將值輸入到控制元件,GetDlgItemText()得到控制元件的值,屬於CSting型別的。CString這是VC++特有的資料型別,用的時候注意和c++各種型別的轉換,這個百度一下就有了,我就不贅述了。
以下是軟體其中一個介面的button控制元件(下圖“確認查詢”控制元件)所繫結的程式碼
void C員工個人資訊查詢Dlg::OnBnClickedButton1()
{
// TODO: 在此新增控制元件通知處理程式程式碼
CString name;
CString id;
GetDlgItemText(IDC_EDIT1,name);
GetDlgItemText(IDC_EDIT2,id);
//int aa=_ttoi(a);
//aa=aa*aa;
//b.Format(_T("%d"),aa);
//SetDlgItemText(IDC_EDIT2,b);
char *host = "localhost";
char *user = "root";//mysql的使用者名稱
char *pass = "root";//你的mysql伺服器密碼
char *db = "employee";
unsigned int port = 3306; //server port
MYSQL *sock;
sock=mysql_init(0);
if(sock &&mysql_real_connect(sock,host,user,pass,db,0,NULL,0))
{
mysql_query(sock,"SET NAMES 'gbk'");
std:string name1,id1,father_id1,father_name1,father_ab1;
name1=(char *)_bstr_t(name);
id1=(char *)_bstr_t(id);
char name3[100],id3[100];
const char *name2,*id2;
name2=name1.c_str();
id2=id1.c_str();
strcpy(name3,name2);
strcpy(id3,id2);
char sql[300];
sprintf( sql,"select father_id,father_name,father_ab from users where id='%s'and name='%s';",id3,name3);
//sprintf(sql,"insert into %s",bbb);
//b=name.c_str();
mysql_query(sock,sql);
MYSQL_RES *res;
MYSQL_ROW row;
res=mysql_store_result( sock) ;//取得查詢結果,儲存查詢到的資料到res
int num=0;
if(row=mysql_fetch_row(res))
{
string num1=row[0],num2=row[1],num3=row[2];
CString father_name;
CString father_id;
CString father_ab;
father_id=num1.c_str();
father_name=num2.c_str();
father_ab=num3.c_str();
SetDlgItemText(IDC_EDIT3,father_name);
SetDlgItemText(IDC_EDIT4,father_id);
SetDlgItemText(IDC_EDIT5,father_ab);
}
else
{
CString retu(_T("輸入資訊有誤!"));
SetDlgItemText(IDC_EDIT3,retu);
}
}
else
{
CString retu(_T("連線資料庫錯誤!"));
SetDlgItemText(IDC_EDIT2,retu);
}
}
最後頁面是這樣的:
相關文章
- 使用Visual Studio的動態連線庫建立通用資料庫連線對話方塊資料庫
- MFC 使用VS 連線 MySQL資料庫MySql資料庫
- SMProxy 分析 (基於 Swoole 開發的 MySQL 資料庫連線池)MySql資料庫
- [MFC]選擇目錄對話方塊和選擇檔案對話方塊
- 【C++】【MFC】模態和非模態對話方塊C++
- 基於vs2012開發activex(MFC)控制元件控制元件
- php連線mysql資料庫基礎PHPMySql資料庫
- [開發教程]第31講:Bootstrap對話方塊boot
- [WAMP網站開發] PHP連線MySQL資料庫基礎知識網站PHPMySql資料庫
- 第五十課、關於對話方塊(About)------------------狄泰軟體學院
- 【數字影象處理】四.MFC對話方塊繪製灰度直方圖直方圖
- vs2012 MFC連線及操作access(2007)資料庫(ADO)資料庫
- VUE:點選開啟的對話方塊外面時,對話方塊總是被關閉Vue
- 【MySQL】自定義資料庫連線池和開源資料庫連線池的使用MySql資料庫
- w10系統對話方塊這麼變小_w10系統對話方塊如何縮小
- 連線mysql資料庫MySql資料庫
- 連線資料庫-mysql資料庫MySql
- 解決資料庫連線池連線mysql時,每隔8小時mysql自動斷開所有連線的問題資料庫MySql
- 用Navicat連線資料庫-資料庫連線(MySQL演示)資料庫MySql
- 用匯編輕鬆地寫基於對話方塊的程式 (轉)
- c#中的模態對話方塊和非模態對話方塊C#
- 利用weblogic的POOL(連線池)連線資料庫 (轉)Web資料庫
- MFC對話方塊新增選單欄並新增滑鼠單擊響應
- 對話方塊函式函式
- 登入對話方塊
- 微信雲開發資料庫連線資料庫
- 資料庫開發(19)基於物件的資料庫資料庫物件
- 基於gin的golang web開發:訪問mysql資料庫GolangWebMySql資料庫
- django | 連線mysql資料庫DjangoMySql資料庫
- 如何連線MySQL資料庫MySql資料庫
- pycharm連線MySQL資料庫PyCharmMySql資料庫
- Mysql資料庫表連線MySql資料庫
- PHP連線MySql資料庫PHPMySql資料庫
- mysql資料庫連線(MySQLdb)MySql資料庫
- Weka 連線MySQL資料庫MySql資料庫
- java連線mysql資料庫JavaMySql資料庫
- Ruby連線MySQL資料庫MySql資料庫
- 如何在mfc對話方塊中新增一個顯示網頁的視窗 .網頁