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

📄 mc3000dlg.cpp

📁 Symbol_MC3000_C#.条码扫码范例程序之5
💻 CPP
字号:
// mc3000Dlg.cpp : 实现文件
//

#include "stdafx.h"
#include "mc3000.h"
#include "mc3000Dlg.h"
#include "ParamManagerDlg.h"
#include "DirectoryMG.h"
#include "shellapi.h"
#include "UserQL.h"
#include "CtrlDlg.h"
#include "SymbolQL.h"

#ifdef _DEBUG
#define new DEBUG_NEW
#endif

// Cmc3000Dlg 对话框

Cmc3000Dlg::Cmc3000Dlg(CWnd* pParent /*=NULL*/)
	: CBkDialogST(Cmc3000Dlg::IDD, pParent)
{
	m_hIcon = AfxGetApp()->LoadIcon(IDR_MAINFRAME);

	/*
	HWND hWnd   =   ::FindWindow(   _T("HHTASKBAR"),NULL   );   
	if(   hWnd   ==   NULL   )     
		this->MessageBox(_T("not   find   statusbar"));   
	::ShowWindow(hWnd,   SW_HIDE   );   
	*/

}

Cmc3000Dlg::~Cmc3000Dlg()
{
	/*	HWND hWnd   =   ::FindWindow(   _T("HHTASKBAR"),NULL   );   
	if(   hWnd   ==   NULL   )     
		this->MessageBox(_T("not   find   statusbar"));   
	::ShowWindow(hWnd,   SW_NORMAL   );  

*/
	if (m_file.m_hFile != CFile::hFileNull)
	{
		m_file.Close();
	}
}

void Cmc3000Dlg::DoDataExchange(CDataExchange* pDX)
{
	CBkDialogST::DoDataExchange(pDX);
	DDX_Control(pDX, IDC_BUTTON_PARAM, m_btSystem);
	DDX_Control(pDX, IDC_BUTTON_CTRL, m_btCtrl);
	DDX_Control(pDX, IDC_BUTTON_CODE_QL, m_btCODEQL);
	DDX_Control(pDX, IDC_BUTTON_USER_QL, m_btUSERQL);
}

BEGIN_MESSAGE_MAP(Cmc3000Dlg, CBkDialogST)
#if defined(_DEVICE_RESOLUTION_AWARE) && !defined(WIN32_PLATFORM_WFSP)
	ON_WM_SIZE()
#endif
	//}}AFX_MSG_MAP
	ON_WM_PAINT()
	ON_BN_CLICKED(IDC_BUTTON_PARAM, &Cmc3000Dlg::OnBnClickedButtonParam)
	ON_BN_CLICKED(IDC_BUTTON_CTRL, &Cmc3000Dlg::OnBnClickedButtonCtrl)
	ON_BN_CLICKED(IDC_BUTTON_CODE_QL, &Cmc3000Dlg::OnBnClickedButtonCodeQl)
	ON_BN_CLICKED(IDC_BUTTON_USER_QL, &Cmc3000Dlg::OnBnClickedButtonUserQl)
	ON_BN_CLICKED(IDC_BUTTON_QUIT, &Cmc3000Dlg::OnQuit)
	
	ON_WM_SIZE()
END_MESSAGE_MAP()


// Cmc3000Dlg 消息处理程序
void Cmc3000Dlg::OnQuit()
{
	CBkDialogST::OnCancel();

}

BOOL Cmc3000Dlg::OnInitDialog()
{
	CBkDialogST::OnInitDialog();
	CenterWindow(GetDesktopWindow());

	// 设置此对话框的图标。当应用程序主窗口不是对话框时,框架将自动
	//  执行此操作
	SetIcon(m_hIcon, TRUE);			// 设置大图标
	SetIcon(m_hIcon, FALSE);		// 设置小图标

	//m_btSystem.SetIcon(IDI_ICON_SYSTEM);
//	m_btSystem.DrawBorder(FALSE);
//	m_btSystem.DrawTransparent();

	// TODO: 在此添加额外的初始化代码
	LoadBMP();

	this->SetWindowText(m_SysParam.m_sPDAName);

	//this->ShowWindow(SW_SHOWMAXIMIZED);  
	ShowWindow(SW_MAXIMIZE);  

	::BringWindowToTop(m_hWnd);

	//交换文件
	bool bres =false;
	try
	{
		if (m_file.Open(CDirectoryMG::GetExchangePath(),CFile::modeCreate|CFile::modeWrite))
		{
			bres = true;
		}
		
	}
	catch (CException* e)
	{
		
	}

	if (m_file.m_hFile != CFile::hFileNull)
	{
		m_file.Close();
	}

	if (!bres)
	{
		AfxMessageBox(L"交换文件建立失败,请重新运行程序!");
	}



	
	return TRUE;  // 除非将焦点设置到控件,否则返回 TRUE
}

#if defined(_DEVICE_RESOLUTION_AWARE) && !defined(WIN32_PLATFORM_WFSP)
void Cmc3000Dlg::OnSize(UINT /*nType*/, int /*cx*/, int /*cy*/)
{
	DRA::RelayoutDialog(
		AfxGetInstanceHandle(), 
		this->m_hWnd, 
		DRA::GetDisplayMode() != DRA::Portrait ? 
			MAKEINTRESOURCE(IDD_MC3000_DIALOG_WIDE) : 
			MAKEINTRESOURCE(IDD_MC3000_DIALOG));
}
#endif


void Cmc3000Dlg::OnPaint()
{
	CPaintDC dc(this); // device context for painting
	// TODO: Add your message handler code here
	// Do not call CBkDialogST::OnPaint() for painting messages
}

void Cmc3000Dlg::OnBnClickedButtonParam()
{
	// TODO: Add your control notification handler code here
	CParamManagerDlg dlg(&m_SysParam,this);
	if (dlg.DoModal() == IDOK)
	{
		ReloadBMP();
	}
	
}

void Cmc3000Dlg::LoadBMP()
{
	
	ReleaseBMP();
	CString sBmpPath;
	HBITMAP hBitmap; //定义位图对象句柄
	sBmpPath = CDirectoryMG::GetBmpsDir() + m_SysParam.m_sBMPName;
	hBitmap=SHLoadDIBitmap(sBmpPath);
	SetBitmap(hBitmap);
	m_hBMP = hBitmap;
	
	
}

void Cmc3000Dlg::ReleaseBMP()
{
	/*
	if (m_hBMP != NULL)
	{
		DeleteObject(m_hBMP);
		m_hBMP = NULL;
	}
	*/
}

void Cmc3000Dlg::ReloadBMP()
{
	LoadBMP();
}

void Cmc3000Dlg::OnBnClickedButtonCtrl()
{
	// TODO: Add your control notification handler code here
	CCtrlDlg dlg;
	if (dlg.DoModal() == IDOK)
	{
	}
}
#include "TimeMsgDlg.h"
#include "DataShowDlg.h"

void Cmc3000Dlg::OnBnClickedButtonCodeQl()
{
	// TODO: Add your control notification handler code here
	CString sKey;
	CSymbolQL *pdlg = new CSymbolQL;
	if (pdlg->DoModal() == IDOK)
	{
		sKey = pdlg->GetKey();
		delete pdlg;
		pdlg = NULL;
		CString sEX;
		if (m_file.Open(CDirectoryMG::GetExchangePath(),CFile::modeCreate|CFile::modeWrite))
		{		
			m_file.SeekToBegin();
			//服务名 用户名 密码 类型 关键子
			m_file.WriteString(m_SysParam.m_sServerName);
			m_file.WriteString(m_SysParam.m_User);
			m_file.WriteString(m_SysParam.m_Password);
			sEX = _T("tiaoma");
			//sEX += _T("\n");
		m_file.WriteString(sEX);
		sEX = sKey;
	//	sEX += _T("\n");

		m_file.WriteString(sEX);
	//	m_file.WriteString(L"\r");
				m_file.Close();

		}
		else
		{
			AfxMessageBox(L"交换文件建立失败,请重新运行程序!");
			return;
		}
		if (m_file.m_hFile != CFile::hFileNull)
		{
			m_file.Close();

		}

		SHELLEXECUTEINFO    si;
		WCHAR               szProgram[255]; 	
		CString sPro = CDirectoryMG::GetQLEXE();
		wsprintf(szProgram,_T("%s"),sPro);
		ZeroMemory(&si, sizeof(si));
		si.cbSize = sizeof(si);
		si.lpFile = szProgram;
		if(ShellExecuteEx(&si) == FALSE)
		{
			MessageBox(_T("无法运行查询组件!"),_T("运行失败"));
		};
		/*
			CTimeMsgDlg dlg2(_T("查询成功,正在初始化数据...!"));
			dlg2.DoModal();
			CDataShowDlg dlg(sKey);
			dlg.DoModal();
			*/


	}
}

void Cmc3000Dlg::OnBnClickedButtonUserQl()
{
	// TODO: Add your control notification handler code here
	CUserQL dlg;
	if (dlg.DoModal() == IDOK)
	{
		CString sEX;
		CString sKey;
		sKey = dlg.m_sKey;
		if (sKey.IsEmpty())
		{
			AfxMessageBox(L"输入不完整!");
			return;
		}
		if (m_file.Open(CDirectoryMG::GetExchangePath(),CFile::modeCreate|CFile::modeWrite))
		{		
			m_file.SeekToBegin();
			m_file.WriteString(m_SysParam.m_sServerName);
			m_file.WriteString(m_SysParam.m_User);
			m_file.WriteString(m_SysParam.m_Password);
		    sEX = _T("weizhi");
			//sEX += _T("\n");
			m_file.WriteString(sEX);
			sEX = sKey;
			//	sEX += _T("\n");

			m_file.WriteString(sEX);
			//	m_file.WriteString(L"\r");
			m_file.Close();

		}
		else
		{
			AfxMessageBox(L"交换文件建立失败,请重新运行程序!");
			return;
		}
		if (m_file.m_hFile != CFile::hFileNull)
		{
			m_file.Close();

		}

		SHELLEXECUTEINFO    si;
		WCHAR               szProgram[255]; 	
		CString sPro = CDirectoryMG::GetQLEXE();
		wsprintf(szProgram,_T("%s"),sPro);
		ZeroMemory(&si, sizeof(si));
		si.cbSize = sizeof(si);
		si.lpFile = szProgram;
		if(ShellExecuteEx(&si) == FALSE)
		{
			MessageBox(_T("无法运行查询组件!"),_T("运行失败"));
		};
	}
}

void Cmc3000Dlg::OnSize(UINT nType, int cx, int cy)
{
	CBkDialogST::OnSize(nType, cx, cy);

	// TODO: Add your message handler code here

}

⌨️ 快捷键说明

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