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

📄 comadmbook.h

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

void ComAdmBook(HWND);	//管理员图书管理
LRESULT CALLBACK dpComAdmBook(HWND, UINT, WPARAM, LPARAM);

void ComAdmBook(HWND hWnd)
{
 	DialogBox((HINSTANCE)GetWindowLong(hWnd, GWL_HINSTANCE), 
		(LPCTSTR)IDD_ADM_BOOK, hWnd, (DLGPROC)dpComAdmBook);
}

LRESULT CALLBACK dpComAdmBook(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam)
{
	AdoConnect ado;
	TCHAR book[MAX_STRING];
	TCHAR author[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) == IDABF) //查找图书
			{
				BOOL bBook		= SendMessage(GetDlgItem(hDlg, IDC_CHECK_WITH_NAME), BM_GETCHECK, 0, 0);
				BOOL bAuthor	= SendMessage(GetDlgItem(hDlg, IDC_CHECK_WITH_AUTHOR), BM_GETCHECK, 0, 0);
				if(!bBook && !bAuthor)
					return TRUE;

 				SendMessage(GetDlgItem(hDlg, IDC_ABF_NAME), WM_GETTEXT, MAX_STRING-1, (LPARAM)book);
				SendMessage(GetDlgItem(hDlg, IDC_ABF_AUTHOR), WM_GETTEXT, MAX_STRING-1, (LPARAM)author);
					
				ado.OnInitDBConnect();

				if(bBook && !bAuthor)
				{
					if(0 == lstrcmp(book, ""))
					{
						MessageBox(hDlg, "图书的名字不能为空!", "Fail!", MB_ICONSTOP);
						return TRUE;
					}
					UniteBSTR(bstr, var "select * from book where name='", var book, 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("name"), var ", 状态=", var pr->GetCollect("state"), var ", 作者=", var pr->GetCollect("author"), var ";");
						SendMessage(GetDlgItem(hDlg, IDC_AB_LIST), LB_INSERTSTRING, 0, (LPARAM)lpstr bstr);
						pr->MoveNext();
					}
				}
				
				if(!bBook && bAuthor)
				{
					if(0 == lstrcmp(author, ""))
					{
						MessageBox(hDlg, "图书的作者不能为空!", "Fail!", MB_ICONSTOP);
						return TRUE;
					}
					UniteBSTR(bstr, var "select * from book where author='", var author, 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("name"), var ", 状态=", var pr->GetCollect("state"), var ", 作者=", var pr->GetCollect("author"), var ";");
						SendMessage(GetDlgItem(hDlg, IDC_AB_LIST), LB_INSERTSTRING, 0, (LPARAM)lpstr bstr);
						pr->MoveNext();
					}
				}

				if(bBook && bAuthor)
				{			
					if(0 == lstrcmp(book, "") || 0 == lstrcmp(author, ""))
					{
						MessageBox(hDlg, "图书的名字与作者都不能为空!", "Fail!", MB_ICONSTOP);
						return TRUE;
					}
					UniteBSTR(bstr, var "select * from book where name='", var book, var "' and author='", var author, 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("name"), var ", 状态=", var pr->GetCollect("state"), var ", 作者=", var pr->GetCollect("author"), var ";");
						SendMessage(GetDlgItem(hDlg, IDC_AB_LIST), LB_INSERTSTRING, 0, (LPARAM)lpstr bstr);
						pr->MoveNext();
					}
				}

 				ado.ExitConnect();
 				return TRUE;
			}

			if (LOWORD(wParam) == IDABN) //新增图书
			{
				SendMessage(GetDlgItem(hDlg, IDC_ABN_NAME), WM_GETTEXT, MAX_STRING-1, (LPARAM)book);
				SendMessage(GetDlgItem(hDlg, IDC_ABN_AUTHOR), WM_GETTEXT, MAX_STRING-1, (LPARAM)author);
				if(0 == lstrcmp(book, "") || 0 == lstrcmp(author, ""))
				{
					MessageBox(hDlg, "图书的名字与作者都不能为空", "Fail!", MB_ICONSTOP);
					return TRUE;
				}

				UniteBSTR(bstr, var "insert into book(name, author) values('", var book, var "', '", var author, var "');");
				ado.OnInitDBConnect();
				ado.ExecuteSQL(bstr);
				ado.ExitConnect();
				
				UniteBSTR(bstr, var "新增图书名字=", var book, var ", 作者=", var author, var ";");
				SendMessage(GetDlgItem(hDlg, IDC_AB_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 + -