Code/Resource
Windows Develop
Linux-Unix program
Internet-Socket-Network
Web Server
Browser Client
Ftp Server
Ftp Client
Browser Plugins
Proxy Server
Email Server
Email Client
WEB Mail
Firewall-Security
Telnet Server
Telnet Client
ICQ-IM-Chat
Search Engine
Sniffer Package capture
Remote Control
xml-soap-webservice
P2P
WEB(ASP,PHP,...)
TCP/IP Stack
SNMP
Grid Computing
SilverLight
DNS
Cluster Service
Network Security
Communication-Mobile
Game Program
Editor
Multimedia program
Graph program
Compiler program
Compress-Decompress algrithms
Crypt_Decrypt algrithms
Mathimatics-Numerical algorithms
MultiLanguage
Disk/Storage
Java Develop
assembly language
Applications
Other systems
Database system
Embeded-SCM Develop
FlashMX/Flex
source in ebook
Delphi VCL
OS Develop
MiddleWare
MPI
MacOS develop
LabView
ELanguage
Software/Tools
E-Books
Artical/Document
TaxExpert.cpp
Package: VC界面编程高级应用技术.rar [view]
Upload User: szcysw
Upload Date: 2013-03-11
Package Size: 6752k
Code Size: 7k
Category:
GUI Develop
Development Platform:
Visual C++
- // TaxExpert.cpp : Defines the class behaviors for the application.
- //
- #include "stdafx.h"
- #include "TaxExpert.h"
- #include "MainFrm.h"
- #include "TaxExpertDoc.h"
- #include "TaxExpertView.h"
- #include "Splash.h"
- #ifdef _DEBUG
- #define new DEBUG_NEW
- #undef THIS_FILE
- static char THIS_FILE[] = __FILE__;
- #endif
- /////////////////////////////////////////////////////////////////////////////
- // CTaxExpertApp
- BEGIN_MESSAGE_MAP(CTaxExpertApp, CWinApp)
- //{{AFX_MSG_MAP(CTaxExpertApp)
- ON_COMMAND(ID_APP_ABOUT, OnAppAbout)
- // NOTE - the ClassWizard will add and remove mapping macros here.
- // DO NOT EDIT what you see in these blocks of generated code!
- //}}AFX_MSG_MAP
- // Standard file based document commands
- ON_COMMAND(ID_FILE_NEW, CWinApp::OnFileNew)
- ON_COMMAND(ID_FILE_OPEN, CWinApp::OnFileOpen)
- // Standard print setup command
- ON_COMMAND(ID_FILE_PRINT_SETUP, CWinApp::OnFilePrintSetup)
- END_MESSAGE_MAP()
- /////////////////////////////////////////////////////////////////////////////
- // CTaxExpertApp construction
- CTaxExpertApp::CTaxExpertApp()
- {
- // TODO: add construction code here,
- // Place all significant initialization in InitInstance
- }
- /////////////////////////////////////////////////////////////////////////////
- // The one and only CTaxExpertApp object
- CTaxExpertApp theApp;
- /////////////////////////////////////////////////////////////////////////////
- // CTaxExpertApp initialization
- /*
- InitInstance:程序初始化函数
- 1、检查软件运行环境
- 2、限制程序运行实例
- 3、启用开始画面
- */
- BOOL CTaxExpertApp::InitInstance()
- {
- //进行数据库访问环境的测试,进行错误捕获
- try{
- AfxDaoInit();
- }
- catch( CDaoException*e )
- {
- CString error;
- error.Format("在当前的软件环境配置不能够运行本程序! rnrn");
- error+="导致该错误的原因可能是以下几方面:rnrn";
- error+="1、未安装DAO数据组件,请安装"安装MS-Jet 数据引擎"!rnt
- (提示:可以在www.microsoft.com下载Mdac_typ.exe、Ddcom95.exe等相关数据库组件)rn";
- error+="2、如果已经安装了数据组件,请在系统中查找dao3?0.dll,
- 并使用下面的方法将之注册:rn";
- error+="tregsvr32.exe /i X:XXXdao3?0.dllrnrn";
- error+="如果不能解决此问题,你也可以和zhoumingyang@163.net
- 联系以解决此问题。";
- MessageBox(NULL,error,"抱歉",MB_ICONSTOP|MB_OK );
- e ->Delete();
- return 0;
- }
- //确保只有一个本程序只能有一个实例在运行
- HWND hWndPrevious = ::GetWindow(::GetDesktopWindow(), GW_CHILD);
- //从桌面窗口开始检查,查看在内存中的窗口有没有“税务师”窗口
- while (::IsWindow(hWndPrevious))
- {
- if (::GetProp(hWndPrevious, "660E72B2-6BF7-4897-8EF2-9C33FBC49564"))
- {
- AfxMessageBox("该程序已经有实例在运行!n请使用任务管理器切换到该程序");
- return 0;
- }
- hWndPrevious = ::GetWindow(hWndPrevious,GW_HWNDNEXT);
- };
- // CG: The following block was added by the Splash Screen component. { CCommandLineInfo cmdInfo; ParseCommandLine(cmdInfo); CSplashWnd::EnableSplashScreen(cmdInfo.m_bShowSplash); }
- AfxEnableControlContainer();
- #ifdef _AFXDLL
- Enable3dControls();
- #else
- Enable3dControlsStatic();
- #endif
- SetRegistryKey(_T("税务师"));
- LoadStdProfileSettings();
- CSingleDocTemplate* pDocTemplate;
- pDocTemplate = new CSingleDocTemplate(
- IDR_MAINFRAME,
- RUNTIME_CLASS(CTaxExpertDoc),
- RUNTIME_CLASS(CMainFrame),
- RUNTIME_CLASS(CTaxExpertView));
- AddDocTemplate(pDocTemplate);
- CCommandLineInfo cmdInfo;
- ParseCommandLine(cmdInfo);
- if (!ProcessShellCommand(cmdInfo))
- return FALSE;
- m_pMainWnd->ShowWindow(SW_SHOW);
- m_pMainWnd->UpdateWindow();
- return TRUE;
- }
- /////////////////////////////////////////////////////////////////////////////
- // CAboutDlg dialog used for App About
- class CAboutDlg : public CDialog
- {
- public:
- void UpdateFont();
- CAboutDlg();
- // Dialog Data
- //{{AFX_DATA(CAboutDlg)
- enum { IDD = IDD_ABOUTBOX };
- CCJHyperLink m_staticEmail;
- CCJHyperLink m_staticAddress;
- CStatic m_staticDisclaimer,m_static;
- CString m_editDisclaimer;
- CAnimateCtrl avi;
- //}}AFX_DATA
- CFont m_Font;
- // ClassWizard generated virtual function overrides
- //{{AFX_VIRTUAL(CAboutDlg)
- protected:
- virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support
- //}}AFX_VIRTUAL
- // Implementation
- protected:
- //{{AFX_MSG(CAboutDlg)
- virtual BOOL OnInitDialog();
- afx_msg int OnCreate(LPCREATESTRUCT lpCreateStruct);
- //}}AFX_MSG
- DECLARE_MESSAGE_MAP()
- };
- CAboutDlg::CAboutDlg() : CDialog(CAboutDlg::IDD)
- {
- //{{AFX_DATA_INIT(CAboutDlg)
- m_editDisclaimer = _T("");
- //}}AFX_DATA_INIT
- m_editDisclaimer.LoadString(IDS_DISCLAIMER);
- UpdateFont();
- }
- int CAboutDlg::OnCreate(LPCREATESTRUCT lpCreateStruct)
- {
- if (CDialog::OnCreate(lpCreateStruct) == -1)
- return -1;
- avi.Create(WS_CHILD|WS_VISIBLE|ACS_TRANSPARENT |ACS_CENTER |
- WS_TABSTOP|CBS_AUTOHSCROLL,CRect(0,0,200,200),this, 888888888888);
- return 0;
- }
- void CAboutDlg::DoDataExchange(CDataExchange* pDX)
- {
- CDialog::DoDataExchange(pDX);
- //{{AFX_DATA_MAP(CAboutDlg)
- DDX_Control(pDX, IDC_STATIC_MAILME, m_staticEmail);
- DDX_Control(pDX, IDC_STATIC_DISCLAIMER, m_staticDisclaimer);
- DDX_Control(pDX, IDC_STATIC_ADDRESS, m_staticAddress);
- DDX_Text(pDX, IDC_EDIT_DISCLAIMER, m_editDisclaimer);
- DDX_Control(pDX, IDC_STATIC1, m_static);
- //}}AFX_DATA_MAP
- }
- BEGIN_MESSAGE_MAP(CAboutDlg, CDialog)
- //{{AFX_MSG_MAP(CAboutDlg)
- ON_WM_CREATE()
- //}}AFX_MSG_MAP
- END_MESSAGE_MAP()
- void CAboutDlg::UpdateFont()
- {
- NONCLIENTMETRICS ncm;
- memset(&ncm, 0, sizeof(NONCLIENTMETRICS));
- ncm.cbSize = sizeof(NONCLIENTMETRICS);
- VERIFY(::SystemParametersInfo(SPI_GETNONCLIENTMETRICS,
- sizeof(NONCLIENTMETRICS), &ncm, 0));
- ncm.lfMessageFont.lfWeight = 700;
- m_Font.CreateFontIndirect(&ncm.lfMessageFont);
- }
- BOOL CAboutDlg::OnInitDialog()
- {
- CDialog::OnInitDialog();
- // set the hyperlinks and static font.
- m_staticEmail.SetURL(_T("mailto:zhoumingyang@163.net?subject=税务师软件"));
- m_staticAddress.SetURL(_T("http://nationaltax.home.chinaren.com"));
- //m_staticDisclaimer.SetFont(&m_Font);
- CString k;
- this->m_staticDisclaimer.SetWindowText("尊敬的朋友:");
- m_editDisclaimer.LoadString(IDS_STRING1);
- this->m_static.SetWindowText("联系方式");
- //m_staticDisclaimer=k;
- this->RedrawWindow();
- avi.Open(IDR_AVI1);
- avi.Play(0,-1,-1);
- return TRUE; // return TRUE unless you set the focus to a control
- // EXCEPTION: OCX Property Pages should return FALSE
- }
- /////////////////////////////////////////////////////////////////////////////
- // App command to run the dialog
- void CTaxExpertApp::OnAppAbout()
- {
- CAboutDlg aboutDlg;
- aboutDlg.DoModal();
- }
- /////////////////////////////////////////////////////////////////////////////
- // CTaxExpertApp commands
- void CTaxExpertApp::UpdateFont(CFont& font, LONG lfWeight)
- {
- font.DeleteObject();
- NONCLIENTMETRICS info;
- info.cbSize = sizeof(info);
- SystemParametersInfo(SPI_GETNONCLIENTMETRICS, sizeof(info), &info, 0);
- info.lfMessageFont.lfWeight = lfWeight;
- VERIFY(font.CreateFontIndirect(&info.lfMenuFont));
- }
- BOOL CTaxExpertApp::PreTranslateMessage(MSG* pMsg)
- {
- // CG: The following lines were added by the Splash Screen component. if (CSplashWnd::PreTranslateAppMessage(pMsg)) return TRUE; return CWinApp::PreTranslateMessage(pMsg);
- }