readertask.h

来自「一个图书馆信息查询系统。是根据学校图书馆的实际情况调查后开发」· C头文件 代码 · 共 77 行

H
77
字号
#include <windows.h>
#include "datas.h"
#include "AdoConnect.h"
#include "resource.h"

static USERINFO * rt;
void ReaderTask(HWND, USERINFO *);
LRESULT CALLBACK dpReaderTask(HWND, UINT, WPARAM, LPARAM);

LRESULT CALLBACK dpReaderTask(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam)
{
	AdoConnect ado;
  	TCHAR str1[MAX_STRING];
 	_bstr_t bstr;
	_RecordsetPtr pr;
	int count;

	switch (message)
	{
		case WM_INITDIALOG:
			wsprintf(str1, "%d", rt->id);
			UniteBSTR(bstr, var "select * from reader where id=", var str1, var ";");
			ado.OnInitDBConnect();
			pr = ado.GetRecordset(bstr);
			
			wsprintf(str1, "%d", count = atoi(lpstr pr->GetCollect("borroweds")));
			SendMessage(GetDlgItem(hDlg, IDC_RB_COUNT), WM_SETTEXT, 0, (LPARAM)lpstr str1);

			if(count > 0)
			{	
				AdoConnect adotemp;
				_RecordsetPtr prtemp;
				TCHAR strname[MAX_STRING], start[MAX_STRING], end[MAX_STRING];

				wsprintf(str1, "%d", rt->id);
				UniteBSTR(bstr, var "select * from task where readerid='", var str1, var "';");
				
				adotemp.OnInitDBConnect();
				prtemp = adotemp.GetRecordset(bstr);

				while(!prtemp->adoBOF && !prtemp->adoEOF)
				{
					wsprintf(start, lpstr prtemp->GetCollect("starttime"));
					wsprintf(end, lpstr prtemp->GetCollect("endtime"));

					wsprintf(str1, lpstr prtemp->GetCollect("bookid"));
					UniteBSTR(bstr, var "select name from book where id=", var str1, var ";");
					pr = ado.GetRecordset(bstr);
					wsprintf(strname, lpstr pr->GetCollect("name"));
					
					UniteBSTR(bstr, var strname, var " ", var start, var " ", var end, var ";");
 					SendMessage(GetDlgItem(hDlg, IDC_RB_LIST), LB_INSERTSTRING, 0, (LPARAM)lpstr bstr);
					prtemp->MoveNext();
				}		
				adotemp.ExitConnect();
			}
			ado.ExitConnect();
			return TRUE;
  
		case WM_COMMAND:
			if(LOWORD(wParam) == IDCANCEL || LOWORD(wParam) == IDOK) 
			{
				EndDialog(hDlg, LOWORD(wParam));
			}
			return TRUE;

		default:
			return FALSE;
	}
}

void ReaderTask(HWND hWnd, USERINFO * ui)
{
	rt = ui;
 	DialogBox((HINSTANCE)GetWindowLong(hWnd, GWL_HINSTANCE), 
		(LPCTSTR)IDD_READER_TASK, hWnd, (DLGPROC)dpReaderTask);
}

⌨️ 快捷键说明

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