www.gusucode.com > VC++通过自己的线程在Splash对话框中显示文字-源码程序 > VC++通过自己的线程在Splash对话框中显示文字-源码程序/code/MainFrm.cpp
// MainFrm.cpp : Implementierung der Klasse CMainFrame // #include "stdafx.h" #include "splash.h" #include "MainFrm.h" #include "MySplashThread.h" #ifdef _DEBUG #define new DEBUG_NEW #undef THIS_FILE static char THIS_FILE[] = __FILE__; #endif ///////////////////////////////////////////////////////////////////////////// // CMainFrame IMPLEMENT_DYNAMIC(CMainFrame, CMDIFrameWnd) BEGIN_MESSAGE_MAP(CMainFrame, CMDIFrameWnd) //{{AFX_MSG_MAP(CMainFrame) ON_WM_CREATE() //}}AFX_MSG_MAP END_MESSAGE_MAP() static UINT indicators[] = { ID_SEPARATOR, // Statusleistenanzeige ID_INDICATOR_CAPS, ID_INDICATOR_NUM, ID_INDICATOR_SCRL, }; ///////////////////////////////////////////////////////////////////////////// // CMainFrame Nachrichten-Handler CMainFrame::CMainFrame() { } CMainFrame::~CMainFrame() { } int CMainFrame::OnCreate(LPCREATESTRUCT lpCreateStruct) { // //Create the splash-thread! // CString vMain("1,2,3,4"), vSeri("5,6,7,8"), vData("1,2,1123,0"); CSplashThreadDemo *pThread = new CSplashThreadDemo(); // you may put these static Texts to the CSplashThreadDemo()-Constructor pThread->AddStringHeaderMain("eJDNS"); pThread->AddStringHeaderSub("an elektronic Just-Do-Nothing-System"); pThread->AddStringCustom("m.y. Company"); pThread->AddStringCustom("Copyright? 1998"); pThread->SetTextCustomized("Registered for: xyz, Demoversion"); pThread->AddStringVersion("Main"); pThread->AddStringVersion("Serialize"); pThread->AddStringVersion("Data"); pThread->AddStringVersionRight(vMain); pThread->AddStringVersionRight(vSeri); pThread->AddStringVersionRight(vData); pThread->SetParent(this); pThread->CreateThread(); if (CMDIFrameWnd::OnCreate(lpCreateStruct) == -1) return -1; if (!m_wndToolBar.Create(this) || !m_wndToolBar.LoadToolBar(IDR_MAINFRAME)) { TRACE0("Failed to create toolbar\n"); return -1; // Fehler beim Erzeugen } if (!m_wndStatusBar.Create(this) || !m_wndStatusBar.SetIndicators(indicators, sizeof(indicators)/sizeof(UINT))) { TRACE0("Failed to create status bar\n"); return -1; // Fehler beim Erzeugen } m_wndToolBar.SetBarStyle(m_wndToolBar.GetBarStyle() | CBRS_TOOLTIPS | CBRS_FLYBY | CBRS_SIZE_DYNAMIC); m_wndToolBar.EnableDocking(CBRS_ALIGN_ANY); EnableDocking(CBRS_ALIGN_ANY); DockControlBar(&m_wndToolBar); return 0; } BOOL CMainFrame::PreCreateWindow(CREATESTRUCT& cs) { return CMDIFrameWnd::PreCreateWindow(cs); } ///////////////////////////////////////////////////////////////////////////// // CMainFrame Konstruktion/Destruktion #ifdef _DEBUG void CMainFrame::AssertValid() const { CMDIFrameWnd::AssertValid(); } void CMainFrame::Dump(CDumpContext& dc) const { CMDIFrameWnd::Dump(dc); } #endif //_DEBUG ///////////////////////////////////////////////////////////////////////////// // CMainFrame Diagnose