⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 comadmreader.h

📁 一个图书馆信息查询系统。是根据学校图书馆的实际情况调查后开发
💻 H
字号:
#include <windows.h>
#include "datas.h"
#include "AdoConnect.h"
#include "resource.h"

void ComAdmReader(HWND);	//管理员读者管理
LRESULT CALLBACK dpComAdmReader(HWND, UINT, WPARAM, LPARAM);

void ComAdmReader(HWND hWnd)
{
 	DialogBox((HINSTANCE)GetWindowLong(hWnd, GWL_HINSTANCE), 
		(LPCTSTR)IDD_ADM_READER, hWnd, (DLGPROC)dpComAdmReader);
}

LRESULT CALLBACK dpComAdmReader(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam)
{
	AdoConnect ado;
	TCHAR name[MAX_STRING];
	TCHAR lisence[MAX_STRING];
	TCHAR str1[MAX_STRING];
 	_bstr_t bstr;
	_RecordsetPtr pr;
	
	switch (message)
	{
		case WM_INITDIALOG:
 			SendMessage(GetDlgItem(hDlg, IDC_CHECK_WITH_NAME), BM_SETCHECK, 0, 0);
 			return TRUE;

		case WM_COMMAND:
			if (LOWORD(wParam) == IDARF) //查找读者
			{
				BOOL bname		= SendMessage(GetDlgItem(hDlg, IDC_CHECK_WITH_NAME), BM_GETCHECK, 0, 0);
				BOOL blisence	= SendMessage(GetDlgItem(hDlg, IDC_CHECK_WITH_LISENCE), BM_GETCHECK, 0, 0);
				if(!bname && !blisence)
					return TRUE;

 				SendMessage(GetDlgItem(hDlg, IDC_ARF_NAME), WM_GETTEXT, MAX_STRING-1, (LPARAM)name);
				SendMessage(GetDlgItem(hDlg, IDC_ARF_LISENCE), WM_GETTEXT, MAX_STRING-1, (LPARAM)lisence);
					
				ado.OnInitDBConnect();

				if(bname && !blisence)
				{
					if(0 == lstrcmp(name, ""))
					{
						MessageBox(hDlg, "读者名字不能为空!", "Fail!", MB_ICONSTOP);
						return TRUE;
					}
					UniteBSTR(bstr, var "select * from reader where name='", var name, var "';");
					pr = ado.GetRecordset(bstr);
					while(!pr->adoBOF && !pr->adoEOF)
					{
  						wsprintf(str1, "%d ", atoi(lpstr pr->GetCollect("id")));
						UniteBSTR(bstr, var "读者: Id=", var str1, var "证号=", var pr->GetCollect("lisence"), var ", 密码=", var pr->GetCollect("password"), var ", 名字=", var pr->GetCollect("name"), var ";");
						SendMessage(GetDlgItem(hDlg, IDC_AR_LIST), LB_INSERTSTRING, 0, (LPARAM)lpstr bstr);
						pr->MoveNext();
					}
				}
				
				if(!bname && blisence)
				{
					if(0 == lstrcmp(lisence, ""))
					{
						MessageBox(hDlg, "证号不能为空!", "Fail!", MB_ICONSTOP);
						return TRUE;
					}
					UniteBSTR(bstr, var "select * from reader where lisence='", var lisence, var "';");
					pr = ado.GetRecordset(bstr);
					while(!pr->adoBOF && !pr->adoEOF)
					{
  						wsprintf(str1, "%d ", atoi(lpstr pr->GetCollect("id")));
						UniteBSTR(bstr, var "读者: Id=", var str1, var "证号=", var pr->GetCollect("lisence"), var ", 密码=", var pr->GetCollect("password"), var ", 名字=", var pr->GetCollect("name"), var ";");
 						SendMessage(GetDlgItem(hDlg, IDC_AR_LIST), LB_INSERTSTRING, 0, (LPARAM)lpstr bstr);
						pr->MoveNext();
					}
				}

				if(bname && blisence)
				{			
					if(0 == lstrcmp(name, "") || 0 == lstrcmp(lisence, ""))
					{
						MessageBox(hDlg, "名字与证号都不能为空!", "Fail!", MB_ICONSTOP);
						return TRUE;
					}
					UniteBSTR(bstr, var "select * from reader where name='", var name, var "' and lisence='", var lisence, var "';");
					pr = ado.GetRecordset(bstr);
					while(!pr->adoBOF && !pr->adoEOF)
					{
  						wsprintf(str1, "%d ", atoi(lpstr pr->GetCollect("id")));
						UniteBSTR(bstr, var "读者: Id=", var str1, var "证号=", var pr->GetCollect("lisence"), var ", 密码=", var pr->GetCollect("password"), var ", 名字=", var pr->GetCollect("name"), var ";");
						SendMessage(GetDlgItem(hDlg, IDC_AR_LIST), LB_INSERTSTRING, 0, (LPARAM)lpstr bstr);
						pr->MoveNext();
					}
				}

 				ado.ExitConnect();
 				return TRUE;
			}

			if (LOWORD(wParam) == IDARN) //新增读者
			{
				SendMessage(GetDlgItem(hDlg, IDC_ARN_NAME), WM_GETTEXT, MAX_STRING-1, (LPARAM)name);
				SendMessage(GetDlgItem(hDlg, IDC_ARN_LISENCE), WM_GETTEXT, MAX_STRING-1, (LPARAM)lisence);
				if(0 == lstrcmp(name, "") || 0 == lstrcmp(lisence, ""))
				{
					MessageBox(hDlg, "新增读者的名字与证号不能为空!", "Fail!", MB_ICONSTOP);
					return TRUE;
				}

				UniteBSTR(bstr, var "insert into reader(name, lisence) values('", var name, var "', '", var lisence, var "');");
				ado.OnInitDBConnect();
				ado.ExecuteSQL(bstr);
				ado.ExitConnect();
				
				UniteBSTR(bstr, var "新增读者:名字=", var name, var ", 证号=", var lisence, var ";");
				SendMessage(GetDlgItem(hDlg, IDC_AR_LIST), LB_INSERTSTRING, 0, (LPARAM)lpstr bstr);
				return TRUE;
			}

			if(LOWORD(wParam) == IDCANCEL) 
			{
				EndDialog(hDlg, LOWORD(wParam));
				return TRUE;
			}

			return TRUE;//WM_COMMAND end

		default:
			return FALSE;
	}
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -