WzdSplash.h と WzdSplash.cppを追加更新する。
自分独自の関数Create()を作成する。
// MSS.cpp : アプリケーション用クラスの機能定義を行います。
//
#include "stdafx.h"
#include "MSS.h"
#include "MainFrm.h"
#include "ChildFrm.h"
#include "MSSDoc.h"
#include "MSS1Doc.h"
#include "MSS2Doc.h"
#include "MSS3Doc.h"//挿入
#include "MSSView.h"
#include "MSS1View.h"
#include "MSS2View.h"
#include "MSS3View.h"
#include "VarDialog.h"
#include "SelectDlg.h"
#include "SetGoalDlg.h"
#include "FixedRateDlg.h"
#include "WzdSplash.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
/////////////////////////////////////////////////////////////////////////////
// CMSSApp
BEGIN_MESSAGE_MAP(CMSSApp, CWinApp)
//{{AFX_MSG_MAP(CMSSApp)
ON_COMMAND(ID_APP_ABOUT, OnAppAbout)
ON_COMMAND(IDM_COMMON_TO_VAR, OnCommonToVar)
ON_COMMAND(IDM_VAR_TO_MODEL, OnVarToModel)
ON_COMMAND(IDM_COM_SCENARIO_TO_DATAFILE, OnComScenarioToDatafile)
ON_COMMAND(IDM_RUN_EXECUTE, OnRunExecute)
ON_COMMAND(IDM_GOALSEEK_EXECUTE, OnGoalseekExecute)
ON_COMMAND(IDM_TEIRITU_HOU, OnTeirituHou)
ON_COMMAND(IDM_CFIN1_PRO, OnCfin1Pro)
//}}AFX_MSG_MAP
// 標準のファイル基本ドキュメント コマンド
ON_COMMAND(ID_FILE_NEW, CWinApp::OnFileNew)
ON_COMMAND(ID_FILE_OPEN, CWinApp::OnFileOpen)
// 標準の印刷セットアップ コマンド
ON_COMMAND(ID_FILE_PRINT_SETUP, CWinApp::OnFilePrintSetup)
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
// CMSSApp クラスの構築
CMSSApp::CMSSApp()
{
// TODO: この位置に構築用コードを追加してください。
// ここに InitInstance 中の重要な初期化処理をすべて記述してください。
}
/////////////////////////////////////////////////////////////////////////////
// 唯一の CMSSApp オブジェクト
CMSSApp static theApp;
/////////////////////////////////////////////////////////////////////////////
// CMSSApp クラスの初期化
BOOL CMSSApp::InitInstance()
{
CWzdSplash wndSplash;
wndSplash.Create(IDB_WZDSPLASH);//溌画"MSSSystem.bmp"のとき
(※)溌画"MSS.bmp"を飛び出させたい時には
wndSplash.Create(IDB_WZDSPLASH1);とすれば良い。(1/8/2001)
wndSplash.UpdateWindow(); //send WM_PAINT
AfxEnableControlContainer();
// 標準的な初期化処理
// もしこれらの機能を使用せず、実行ファイルのサイズを小さく
// したければ以下の特定の初期化ルーチンの中から不必要なもの
// を削除してください。
#ifdef _AFXDLL
Enable3dControls(); // 共有 DLL の中で MFC を使用する場合にはここを呼び出してください。
#else
Enable3dControlsStatic(); // MFC と静的にリンクしている場合にはここを呼び出してください。
#endif
// 設定が保存される下のレジストリ キーを変更します。
// 会社名または所属など、適切な文字列に
// 変更してください。
SetRegistryKey(_T("Local AppWizard-Generated Applications"));
LoadStdProfileSettings(); // 標準の INI ファイルのオプションをロー爪します (MRU を含む)
// アプリケーション用のドキュメント テンプレートを登録します。ドキュメント
テンプレート
// はドキュメント、フレーム ウィンドウとビューを結合するために機能します。
CMultiDocTemplate* pDocTemplate;
pDocTemplate = new CMultiDocTemplate(
IDR_MSSTYPE,
RUNTIME_CLASS(CMSSDoc),
RUNTIME_CLASS(CChildFrame), // カスタム MDI 子フレーム
RUNTIME_CLASS(CMSSView));
AddDocTemplate(pDocTemplate);
pDocTemplate = new CMultiDocTemplate(
IDR_MSSTYPE1,
RUNTIME_CLASS(CMSS1Doc),
RUNTIME_CLASS(CChildFrame), // カスタム MDI 子フレーム
RUNTIME_CLASS(CMSS1View));
AddDocTemplate(pDocTemplate);
pDocTemplate = new CMultiDocTemplate(
IDR_MSSTYPE2,
RUNTIME_CLASS(CMSS2Doc),
RUNTIME_CLASS(CChildFrame), // カスタム MDI 子フレーム
RUNTIME_CLASS(CMSS2View));
AddDocTemplate(pDocTemplate);
pDocTemplate = new CMultiDocTemplate(
IDR_MSSTYPE4,
RUNTIME_CLASS(CMSS3Doc),//挿入
RUNTIME_CLASS(CChildFrame), // カスタム MDI 子フレーム
RUNTIME_CLASS(CMSS3View));
AddDocTemplate(pDocTemplate);
// メイン MDI フレーム ウィンドウを作成
CMainFrame* pMainFrame = new CMainFrame;
if (!pMainFrame->LoadFrame(IDR_MAINFRAME))
return FALSE;
m_pMainWnd = pMainFrame;
// DDE、file open など標準のシェル コマンドのコマンドラインを解析します。
CCommandLineInfo cmdInfo;
ParseCommandLine(cmdInfo);
// コマンドラインでディスパッチ コマンドを指定します。
if (!ProcessShellCommand(cmdInfo))
return FALSE;
// メイン ウィンドウが初期化されたので、表示と更新を行います。
pMainFrame->ShowWindow(m_nCmdShow);
pMainFrame->UpdateWindow();
return TRUE;
}
/////////////////////////////////////////////////////////////////////////////
// アプリケーションのバージョン情報で使われる CAboutDlg ダイアログ
class CAboutDlg : public CDialog
{
public:
CAboutDlg();
// ダイアログ データ
//{{AFX_DATA(CAboutDlg)
enum { IDD = IDD_ABOUTBOX };
//}}AFX_DATA
// ClassWizard 仮想関数のオーバーライドを生成します。
//{{AFX_VIRTUAL(CAboutDlg)
protected:
virtual void DoDataExchange(CDataExchange* pDX);
// // DDX/DDV のサポート
//}}AFX_VIRTUAL
// インプリメンテーション
protected:
//{{AFX_MSG(CAboutDlg)
// メッセージ ハンドラはありません。
//}}AFX_MSG
DECLARE_MESSAGE_MAP()
};
CAboutDlg::CAboutDlg() : CDialog(CAboutDlg::IDD)
{
//{{AFX_DATA_INIT(CAboutDlg)
//}}AFX_DATA_INIT
}
void CAboutDlg::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
//{{AFX_DATA_MAP(CAboutDlg)
//}}AFX_DATA_MAP
}
BEGIN_MESSAGE_MAP(CAboutDlg, CDialog)
//{{AFX_MSG_MAP(CAboutDlg)
// メッセージ ハンドラはありません。
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
// ダイアログを実行するためのアプリケーション コマンド
void CMSSApp::OnAppAbout()
{
CAboutDlg aboutDlg;
aboutDlg.DoModal();
}
/////////////////////////////////////////////////////////////////////////////
// CMSSApp コマンド
void CMSSApp::OnCommonToVar()
{
// TODO: この位置にコマンド ハンドラ用のコードを追加してください
//挿入はじめ
CMSSDoc::Edit_Nr = IDC_EDIT2;
//insert begin
++CMSSDoc::check_eidt2;
//insert
CString strFileName="C:\\DOCUMENTS AND SETTINGS\\ADMINISTRATOR\\MY
DOCUMENTS\\NOTO\\SEMINAR2\\Vcpp\\MSSrun\\Vc.d";
// CString strFileName="J:\\Home\\演習2\\2000\\Vc.d";
// CString strFileName="C:\\マイドキュメント\\Vc.d";
CWinApp::OpenDocumentFile(strFileName);
//挿入おわり
}
void CMSSApp::OnVarToModel()
{
// TODO: この位置にコマンド ハンドラ用のコードを追加してください
//挿入はじめ
CMSSDoc MyDocument;
MyDocument.Edit_Nr = IDC_EDIT1;
//insert begin
++CMSSDoc::check_eidt1;
//insert end
// CString strFileName="J:\\Home\\演習2\\2000\\Cm.d";
CString strFileName="C:\\DOCUMENTS AND SETTINGS\\ADMINISTRATOR\\MY
DOCUMENTS\\NOTO\\SEMINAR2\\Vcpp\\MSSrun\\Cm.d";
CVarDialog VarModelDLG;
if (VarModelDLG.DoModal()==IDOK){
}
OpenDocumentFile(strFileName);
//挿入おわり
}
void CMSSApp::OnComScenarioToDatafile()
{
// TODO: この位置にコマンド ハンドラ用のコードを追加してください
//挿入はじめ
CMSSDoc::Edit_Nr = IDC_EDIT4;
//insert begin
++CMSSDoc::check_eidt4;
//insert end
// CString strFileName="J:\\Home\\演習2\\2000\\Csf.d";
CString strFileName="C:\\DOCUMENTS AND SETTINGS\\ADMINISTRATOR\\MY
DOCUMENTS\\NOTO\\SEMINAR2\\Vcpp\\MSSrun\\Csf.d";
OpenDocumentFile(strFileName);
//挿入おわり
}
void CMSSApp::OnRunExecute()
{
CSelectDlg SelectDialog;
// CString strFileName="C:\DOCUMENTS AND SETTINGS\ADMINISTRATOR\MY
DOCUMENTS\NOTO\SEMINAR2\VCPP\MSSRUNFINAL\Cfin1.dat";
CString strFileName="C:\\DOCUMENTS AND SETTINGS\\ADMINISTRATOR\\MY
DOCUMENTS\\NOTO\\SEMINAR2\\Vcpp\\MSSRUNFINAL\\Cfin1.dat";
// CString strFileName="J:\\Home\\演習2\\2000\\Cfin1.dat";
// CString strFileName="Cfin1.txt";
CMSS1Doc::noto=1;
if (SelectDialog.DoModal()==IDOK){
// CWinApp::OpenDocumentFile(strFileName);
OpenDocumentFile(strFileName);
// TODO: この位置にコマンド ハンドラ用のコードを追加してください
}
}
void CMSSApp::OnGoalseekExecute()
{
// TODO: この位置にコマンド ハンドラ用のコードを追加してください
CSetGoalDlg SetGoalseek;
CString strFileName="C:\\DOCUMENTS AND SETTINGS\\ADMINISTRATOR\\MY
DOCUMENTS\\NOTO\\SEMINAR2\\Vcpp\\MSSgoalseek\\Cfin1.pro";
// CString strFileName="J:\\Home\\演習2\\2000\\Cfin1.dat";
// CString strFileName="Cfin1.txt";
CMSS2Doc::noto=1;
if (SetGoalseek.DoModal()==IDOK){
// CWinApp::OpenDocumentFile(strFileName);
OpenDocumentFile(strFileName);
}
}
void CMSSApp::OnTeirituHou()
{
// TODO: この位置にコマンド ハンドラ用のコードを追加してください
CFixedRateDlg FixedRateDlg;
if (FixedRateDlg.DoModal()==IDOK){
}
}
void CMSSApp::OnCfin1Pro()
{
// TODO: この位置にコマンド ハンドラ用のコードを追加してください
CString strFileName="C:\\DOCUMENTS AND SETTINGS\\ADMINISTRATOR\\MY
DOCUMENTS\\NOTO\\SEMINAR2\\Vcpp\\MSSReasoning\\Report.txt";
OpenDocumentFile(strFileName);
}
// WzdSplash.h : ヘッダー
ファイル
//
#include "WzdBtmap.h"
/////////////////////////////////////////////////////////////////////////////
// CWzdSplash ウィンドウ
class CWzdSplash : public CWnd
{
// コンストラクション
public:
CWzdSplash();
// アトリビュート
public:
// オペレーション
public:
void Create( UINT nBitmapID );
// オーバーライド
// ClassWizard は仮想関数のオーバーライドを生成します。
//{{AFX_VIRTUAL(CWzdSplash)
//}}AFX_VIRTUAL
// インプリメンテーション
public:
virtual ~CWzdSplash();
// 生成されたメッセージ マップ関数
protected:
//{{AFX_MSG(CWzdSplash)
afx_msg void OnPaint();
//}}AFX_MSG
DECLARE_MESSAGE_MAP()
private:
CWzdBitmap m_bitmap;
};
/////////////////////////////////////////////////////////////////////////////
//{{AFX_INSERT_LOCATION}}
// Microsoft Developer Studio は前行の直前に追加の宣言を挿入します。
#endif // !defined(AFX_WZDSPLASH_H__17D546A1_D5E4_11D4_9C1E_00000E49332F__INCLUDED_)
// WzdSplash.cpp : インプリメンテーション
ファイル
//
#include "stdafx.h"
#include "mss.h"
#include "WzdSplash.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
/////////////////////////////////////////////////////////////////////////////
// CWzdSplash
CWzdSplash::CWzdSplash()
{
}
CWzdSplash::~CWzdSplash()
{
}
BEGIN_MESSAGE_MAP(CWzdSplash, CWnd)
//{{AFX_MSG_MAP(CWzdSplash)
ON_WM_PAINT()
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
// CWzdSplash メッセージ ハンドラ
void CWzdSplash::Create( UINT nID )
{
m_bitmap.LoadBitmapEx(nID,FALSE);
int x = (::GetSystemMetrics (SM_CXSCREEN)-m_bitmap.m_Width)/2;
int y = (::GetSystemMetrics (SM_CYSCREEN)-m_bitmap.m_Height)/2;
CRect rect(x,y,x+m_bitmap.m_Width,y+m_bitmap.m_Height);
CreateEx(0,AfxRegisterWndClass(0),"",WS_POPUP|WS_VISIBLE|WS_BORDER,rect,NULL,0);
}
void CWzdSplash::OnPaint()
{
CPaintDC dc(this); // 描画用のデバイス コンテキスト
// TODO: この位置にメッセージ ハンドラ用のコードを追加してください
// 描画用メッセージとして CWnd::OnPaint() を呼び出してはいけません
// get
bitmap colors
CPalette *pOldPal = dc.SelectPalette(m_bitmap.GetPalette(),FALSE);
dc.RealizePalette();
// get device context to select bitmap
into
CDC dcComp;
dcComp.CreateCompatibleDC(&dc);
dcComp.SelectObject(&m_bitmap);
// draw bitmap
dc.BitBlt(0,0,m_bitmap.m_Width,m_bitmap.m_Height,
&dcComp, 0,0,SRCCOPY);
// reselect old palette
dc.SelectPalette(pOldPal,FALSE);
}