银行排队系统

一个c语言做出来的银行排队系统

// BankNumCallDlg.cpp : implementation file
#include "stdafx.h"
#include "BankNumCall.h"
#include "BankNumCallDlg.h"
#include "windowsx.h"
#include "queue"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
HANDLE Serv_hMutex,CalNum_hMutex;
std::queue<int> Work_q;
int CalNum=0;
class CAboutDlg : public CDialog
{
public:
CAboutDlg(); //函数成员
enum { IDD = IDD_ABOUTBOX };
protected:
virtual void DoDataExchange(CDataExchange* pDX);
DECLARE_MESSAGE_MAP()
};
CAboutDlg::CAboutDlg() : CDialog(CAboutDlg::IDD)//析构函数
{
}
void CAboutDlg::DoDataExchange(CDataExchange* pDX)//析构函数
{
CDialog::DoDataExchange(pDX);
}
BEGIN_MESSAGE_MAP(CAboutDlg, CDialog)
END_MESSAGE_MAP()
BOOL CBankNumCallDlg::M_bt1=FALSE;
BOOL CBankNumCallDlg::M_bt2=FALSE;
BOOL CBankNumCallDlg::M_Ser1=FALSE;
BOOL CBankNumCallDlg::M_Ser2=FALSE;
BOOL CBankNumCallDlg::M_Ser3=FALSE;
CBankNumCallDlg::CBankNumCallDlg(CWnd* pParent /*=NULL*/)
: CDialog(CBankNumCallDlg::IDD, pParent)
{
m_hIcon = AfxGetApp()->LoadIcon(IDR_MAINFRAME);
}
void CBankNumCallDlg::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
}
BEGIN_MESSAGE_MAP(CBankNumCallDlg, CDialog)
//{{AFX_MSG_MAP(CBankNumCallDlg)
ON_WM_SYSCOMMAND()
ON_WM_PAINT()
ON_WM_QUERYDRAGICON()
ON_BN_CLICKED(IDC_BUTTON1, OnButton1)
ON_BN_CLICKED(IDC_BUTTON2, OnButton2)
ON_BN_CLICKED(IDC_BUTTON3, OnButton3)
ON_BN_CLICKED(IDC_BUTTON4, OnButton4)
ON_BN_CLICKED(IDC_BUTTON5, OnButton5)
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
BOOL CBankNumCallDlg::OnInitDialog()
{
CDialog::OnInitDialog();
ASSERT((IDM_ABOUTBOX & 0xFFF0) == IDM_ABOUTBOX);
ASSERT(IDM_ABOUTBOX < 0xF000);
CMenu* pSysMenu = GetSystemMenu(FALSE);
if (pSysMenu != NULL)
{
CString strAboutMenu;
strAboutMenu.LoadString(IDS_ABOUTBOX);
if (!strAboutMenu.IsEmpty())
{
pSysMenu->AppendMenu(MF_SEPARATOR);
pSysMenu->AppendMenu(MF_STRING, IDM_ABOUTBOX, strAboutMenu);
}
}
SetIcon(m_hIcon, TRUE);
SetIcon(m_hIcon, FALSE);
Serv_hMutex=CreateMutex(NULL,false,"ser");
CalNum_hMutex=CreateMutex(NULL,false,"cal");
R_PARAM *pR_Param=new R_PARAM;
pR_Param->hwnd=m_hWnd;
HANDLE hThread_1=CreateThread(NULL,0,ServWin1,(LPVOID)pR_Param,0,NULL);
CloseHandle(hThread_1);
HANDLE hThread_2=CreateThread(NULL,0,ServWin2,(LPVOID)pR_Param,0,NULL);
CloseHandle(hThread_2);
HANDLE hThread_3=CreateThread(NULL,0,ServWin3,(LPVOID)pR_Param,0,NULL);
CloseHandle(hThread_3);
HANDLE hThread_4=CreateThread(NULL,0,Caller1,(LPVOID)pR_Param,0,NULL);
CloseHandle(hThread_4);
HANDLE hThread_5=CreateThread(NULL,0,Caller2,(LPVOID)pR_Param,0,NULL);
CloseHandle(hThread_5);//线程
return TRUE;
}
void CBankNumCallDlg::OnSysCommand(UINT nID, LPARAM lParam)
{
if ((nID & 0xFFF0) == IDM_ABOUTBOX)
{
CAboutDlg dlgAbout;
dlgAbout.DoModal();
}
else
{
CDialog::OnSysCommand(nID, lParam);
}
}
void CBank

你可能喜欢

  • c语言图书管理系统
  • 工资管理系统c语言
  • C语言课程设计总结
  • c语言课程设计学生成绩管理系统
  • C语言职工信息管理系统
  • 排队叫号系统设计
  • 数据结构银行业务模拟

银行排队系统相关文档

最新文档

返回顶部