一括削除


  Dialog_51.cpp



  
#include "stdafx.h"

#include "App_51.h"

static App_51 *CurApp;
static LboxListview *Lview;
// *********************************************************
// ダイアログの処理
// *********************************************************
LRESULT CALLBACK Dialog_51(
HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam )
{
	switch( message ) {
		case WM_INITDIALOG:
			bEnd = false;

			Lview = new LboxListview(
				GetDlgItem( hDlg, IDC_LIST ),
				LBOX_LISTVIEW_EDITABLE
			);
			Lview->Grid( );
			Lview->SetFont( 0, 9, false );
			// チェックボックスの実装
			Lview->ApplyCheckbox( true );
			// ポップアップメニューを実装
			Lview->CreatePopup( IDR_ACTION, 0 );

			CurApp = new App_51( hDlg, Lview );
			// 初期フォーカス
			Dlg->EditFocus( IDC_COND );
			return FALSE;

		case LBOX_RETURN:
			// Enter キーをタブ扱いしないコントロール
			if ( Dlg->GetHandle( IDC_CHECK ) == (HWND)wParam ) {
				break;
			}
			Tool.TabKey();
			break;

		case LBOX_LV_HEADCLICK:
			if ( (int)lParam != 0 ) {
				Lview->GetColumnTitle( (int)lParam, Column );
				if ( Tool.IsShift() ) {
					Column->operator += (" desc ");
				}
				CurApp->DataRequest();
			}
			break;

		// リストビューの通知イベント
		case WM_NOTIFY:
			if ( Lview != NULL ) {
				Lview->Notify( hDlg, lParam );
			}
			break;

		case WM_COMMAND:
			// 終了
			if( LOWORD(wParam) == IDCANCEL ) {
				bEnd = true;
				delete Lview;
				delete CurApp;
				EndDialog(hDlg, LOWORD(wParam));
				return TRUE;
			}

			// ABOUT
			if( LOWORD(wParam) == IDM_ABOUT ) {
				DialogBox(
					hInst,
					(LPCTSTR)IDD_ABOUTBOX,
					hDlg,
					(DLGPROC)About
				);
			}

			// アプリケーションの終了
			if( LOWORD(wParam) == IDM_EXIT ) {
				Dlg->SendMsg(
					WM_COMMAND,
					MAKEWPARAM( IDCANCEL, 0 ),
					0
				);
			}

			// 選択行をチェック
			if ( LOWORD(wParam) == IDM_ON ) {
				CurApp->SelectCheck();
			}

			// 選択行のチェックを外す
			if ( LOWORD(wParam) == IDM_OFF ) {
				CurApp->SelectCheckOff();
			}

			// 削除
			if ( LOWORD(wParam) == IDM_DELETE ) {
				// 本当は、ここで未選択のチェックを行います
				GetMessageString( "0102" );
				if ( Dlg->MsgOkCancel( Message ) ) {
					if ( CurApp->DeleteData() ) {
						GetMessageString( "5001" );
						Dlg->StatusSetText(Message);
						CurApp->DataRequest();
						Dlg->EditFocus( IDC_COND );
					}
				}
			}

			// 検索
			if ( LOWORD(wParam) == IDC_CHECK ) {
				CurApp->DataRequest();
			}

			// クリア
			if ( LOWORD(wParam) == IDC_CLEAR ) {
				Dlg->EditSetText( IDC_COND, "" );
				Lview->Reset();
			}

			// ステータスバーのクリア
			if ( LOWORD(wParam) == IDC_COND ) {
				if ( bEnd ) {
					break;
				}
				if ( HIWORD(wParam) == EN_KILLFOCUS ) {
					Dlg->StatusSetText("");
				}
			}
			break;
	}
	return FALSE;
}
  










  infoboard   管理者用   
このエントリーをはてなブックマークに追加





フリーフォントWEBサービス
SQLの窓WEBサービス

SQLの窓フリーソフト

素材

一般WEBツールリンク

SQLの窓

フリーソフト

JSライブラリ