* P_myThreadのCWinThread; // スレッドポインタ作成 = FALSEをBOOL flag_myThreadを; // 終了するか否か // 静的UINT MyThreadFunction(LPVOID pParam)(クラスを置く)ヘッダファイルで宣言され; // スレッドエントリ関数定義 UINT CMFCApplication25Dlgを:: MyThreadFunction(LPVOID pParam)// スレッドエントリ機能、具体 { CMFCApplication25Dlg * DLG =(CMFCApplication25Dlg * )pParam。 ため(INT I = 0 ; I <= 100 ; I ++ ) { IF(flag_myThread)BREAK ; DLG - > SetDlgItemInt(IDC_STATIC、Iは、偽); スリープ時( 100 ); } p_myThread = NULL; // スレッドまたはスレッド不在キャンセルの終了 戻り 0 ; } ボイドCMFCApplication25Dlg :: OnBnClickedButton1() { // TODO:この添加コントロール通知ハンドラコードで IF(p_myThread == NULL)// どのスレッドが正常に起動していないがある場合 { // スレッド作成および起動 p_myThread = AfxBeginThread(MyThreadFunction、(LPVOID)これを); // このスレッドエントリ関数パラメータpParam割り当て flag_myThread = FALSE; } そうでなければ { AfxMessageBox(_T(" スレッド開始されています" )); } } ボイドCMFCApplication25Dlg :: OnBnClickedButton2() { // TODO:このコントロール通知ハンドラコードを追加 IF(p_myThread == NULL)// どのスレッドがない場合は、正常に起動 { AfxMessageBox(_T(" スレッドが存在しません」))。 } 他 { p_myThread - > SuspendThread() ; // 、休止サスペンド } } ボイドCMFCApplication25Dlgを:: OnBnClickedButton3() { // TODO:この添加コントロール通知ハンドラコード内の IF(p_myThread == NULL)// ないスレッドなら打ち上げ成功 { AfxMessageBox(_T(" スレッドが存在しません" )); } 他 { p_myThread - > のResumeThreadへの() ; //は継続 } } のボイドCMFCApplication25Dlgを:: OnBnClickedButton4() { // TODO:このほかのコントロール通知ハンドラコードで IF(p_myThread NULL ==)// ないスレッドが正常に起動しない場合 { AfxMessageBox(_T(" スレッドが存在しない" )); } 他 { flag_myThread = TRUE; // 終了 } }