📄 bankdlg.cpp
字号:
if(q.size()!=0){
itoa( q.front(), str, 10);
q.pop();
::PostMessage(hwnd,WM_DATA,(WPARAM)ID,(LPARAM)str);
}
ReleaseMutex(hMutex1);
}
Sleep(4000);
}
return 0;
}
DWORD WINAPI CBankDlg::WinProc3( LPVOID lpParameter)
{
char str[10];
int ID=IDC_EDIT3;
char str1[10]="暂停服务";
HWND hwnd=((RECVPARAM*)lpParameter)->hwnd;
while(TRUE)
{
if(m_window3)
::PostMessage(hwnd,WM_DATA,(WPARAM)ID,(LPARAM)str1);
else{
WaitForSingleObject(hMutex1,INFINITE);
if(q.size()!=0){
itoa( q.front(), str, 10);
q.pop();
::PostMessage(hwnd,WM_DATA,(WPARAM)ID,(LPARAM)str);
}
ReleaseMutex(hMutex1);
}
Sleep(3000);
}
return 0;
}
DWORD WINAPI CBankDlg::WinProc4( LPVOID lpParameter)
{char str[10];
int ID=IDC_EDIT6;
char str1[10]="暂停服务";
HWND hwnd=((RECVPARAM*)lpParameter)->hwnd;
while(TRUE){
if(m_window4)
::PostMessage(hwnd,WM_DATA,(WPARAM)ID,(LPARAM)str1);
else{
WaitForSingleObject(hMutex1,INFINITE);
if(q.size()!=0){
itoa( q.front(), str, 10);
q.pop();
::PostMessage(hwnd,WM_DATA,(WPARAM)ID,(LPARAM)str);
}
ReleaseMutex(hMutex1);
}
Sleep(5000);
}
return 0;
}
DWORD WINAPI CBankDlg::QUHAO1( LPVOID lpParameter)
{ char str[10];
int ID=IDC_EDIT4;
while(TRUE)
{
if(m_btn1)
{ WaitForSingleObject(hMutex2,INFINITE);
number++;
itoa( number, str, 10);
q.push(number);
m_btn1=FALSE;
HWND hwnd=((RECVPARAM*)lpParameter)->hwnd;
::PostMessage(hwnd,WM_DATA,(WPARAM)ID,(LPARAM)str);
ReleaseMutex(hMutex2);
}
Sleep(50);
}
return 0;
}
DWORD WINAPI CBankDlg::QUHAO2( LPVOID lpParameter)
{
char str1[10];
int ID=IDC_EDIT4;
while(TRUE)
{
if(m_btn2)
{ WaitForSingleObject(hMutex2,INFINITE);
number++;
itoa( number, str1, 10);
q.push(number);
m_btn2=FALSE;
HWND hwnd=((RECVPARAM*)lpParameter)->hwnd;
::PostMessage(hwnd,WM_DATA,(WPARAM)ID,(LPARAM)str1);
ReleaseMutex(hMutex2);
}
Sleep(50);
}
return 0;
}
DWORD WINAPI CBankDlg::QUHAO3( LPVOID lpParameter)
{
char str1[10];
int ID=IDC_EDIT4;
while(TRUE)
{
if(m_btn2)
{ WaitForSingleObject(hMutex2,INFINITE);
number++;
itoa( number, str1, 10);
q.push(number);
m_btn2=FALSE;
HWND hwnd=((RECVPARAM*)lpParameter)->hwnd;
::PostMessage(hwnd,WM_DATA,(WPARAM)ID,(LPARAM)str1);
ReleaseMutex(hMutex2);
}
Sleep(50);
}
return 0;
}
void CBankDlg::OnData(WPARAM wParam,LPARAM lParam)
{
// CClientDC dc(this);
CString str=(char*)lParam;
int ID=(int)wParam;
// dc.SetTextColor(RGB(255,44,55));
if("暂停服务"==str)
( GetDlgItem (ID) ) ->SetFont( &my_CFont1);
else( GetDlgItem (ID) ) ->SetFont( &my_CFont);
SetDlgItemText(ID,str);
if(IDC_EDIT4==ID)
{
char str1[10];
itoa(q.size()-1, str1, 10);
SetDlgItemText(IDC_EDIT5,str1);
}
int b=0;
if(IDC_EDIT1==ID||IDC_EDIT2==ID||IDC_EDIT3==ID||IDC_EDIT6==ID)
{ if("暂停服务"!=str)
{
if(IDC_EDIT1==ID)b=1;
else if(IDC_EDIT2==ID)b=2;
else if(IDC_EDIT6==ID)b=3;
else b=4;
char string[200];
sprintf(string,"请第 %s 号客户到 %d 号窗口",str,b);
SetDlgItemText(IDC_TEXT,string);
int num=q.size();
char string1[200];
sprintf(string1,"您前面还有 %d 位客户办理业务,请您稍候",num);
SetDlgItemText(IDC_TEXT2,string1);
}
bool pp=1;
while(pp)
{ char string[200];
sprintf(string,"请第 %s 号客户到 %d 号窗口",str,b);
SetDlgItemText(IDC_TEXT3,string);
pp=0;
}
}
return;
}
void CBankDlg::OnData2(WPARAM wParam,LPARAM lParam)
{
// CClientDC dc(this);
CString str=(char*)lParam;
int ID=(int)wParam;
// dc.SetTextColor(RGB(255,44,55));
if("暂停服务"==str)
( GetDlgItem (ID) ) ->SetFont( &my_CFont1);
else( GetDlgItem (ID) ) ->SetFont( &my_CFont);
SetDlgItemText(ID,str);
if(IDC_EDIT4==ID)
{char str1[10];
itoa(q.size()-1, str1, 10);
SetDlgItemText(IDC_EDIT5,str1);}
int b=0;
if(IDC_EDIT1==ID||IDC_EDIT2==ID||IDC_EDIT3==ID||IDC_EDIT6==ID)
{ if("暂停服务"!=str)
{
if(IDC_EDIT1==ID)b=1;
else if(IDC_EDIT2==ID)b=2;
else if(IDC_EDIT6==ID)b=3;
else b=4;
}
}
bool pp=1;
while(pp)
{ char string[200];
sprintf(string,"请第 %s 号客户到 %d 号窗口",str,b);
SetDlgItemText(IDC_TEXT3,string);
Sleep(5000);//显示延时
pp=0;
}
return;
}
//DEL DWORD WINAPI CBankDlg::WinProc2()
//DEL {
//DEL
//DEL }
void CBankDlg::OnStatic1()
{
m_window1=!m_window1;
}
void CBankDlg::OnStatic2()
{
m_window2=!m_window2;
}
void CBankDlg::OnStatic3()
{
m_window3=!m_window3;
}
void CBankDlg::OnStatic4()
{
m_window4=!m_window4;
}
HBRUSH CBankDlg::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor)
{
HBRUSH hbr = CDialog::OnCtlColor(pDC, pWnd, nCtlColor);
// TODO: Change any attributes of the DC here
// TODO: Return a different brush if the default is not desired
return m_brush;
}
void CBankDlg::OnStatictime()
{CString strTime ;
CTime theTime;
theTime = CTime::GetCurrentTime();
strTime =theTime.Format("%H:%M:%S");
SetDlgItemText(IDC_STATICTIME,strTime);
}
void CBankDlg::OnTimer(UINT nIDEvent)
{
CString strTime ;
CTime theTime;
theTime = CTime::GetCurrentTime();
strTime =theTime.Format("%H:%M:%S");
//时:分:秒的格式,格式可以随你需要变换,不用":"号,用"-"符号也可以。
SetDlgItemText(IDC_STATICTIME,strTime);
CDialog::OnTimer(nIDEvent);
}
void CBankDlg::OnButton3()
{
m_window1=!m_window1;
}
void CBankDlg::OnButton4()
{
m_window2=!m_window2;
}
void CBankDlg::OnButton5()
{
m_window3=!m_window3;
}
void CBankDlg::OnButton6()
{
m_btn2=TRUE;
// TODO: Add your control notification handler code here
}
void CBankDlg::OnButton7()
{
m_window4=!m_window4;// TODO: Add your control notification handler code here
}
void CBankDlg::OnText()
{
// TODO: Add your control notification handler code here
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -