VC6 プロジェクト
1) lightbox LIB 使用
// **********************************************************************
// スケルトン名 : リザルトダイアログ
// ◎ メインウインドウ無し
// ◎ ダイアログのスタイルの「システム メニュー」はチェックオフ
// ◎ ダイアログのその他のスタイルの「中央」はチェックオン
// ★ lightbox LIB を使用
// コンボボックスで選択された結果をプログラムが実行しているディレクトリ
// に結果として書き込む。
// WSH 等のスクリプトの入力インターフェイスを想定している
// **********************************************************************
#include "Dialog.h"
HINSTANCE hInst;
LboxTool Tool;
LboxTextFile Text;
LboxString LPath;
LboxDlg *Dlg;
LboxCombobox *Combo;
// *********************************************************
// メッセージ処理
// *********************************************************
LRESULT CALLBACK DialogProc( HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam )
{
switch( message ) {
case WM_INITDIALOG:
// ダイアログオブジェクトのインスタンス化
Dlg = new LboxDlg( hDlg );
// スタイル変更
Dlg->ChangeStyle( WS_MINIMIZEBOX | WS_SYSMENU, 0 );
Dlg->ChangeExStyle( WS_EX_APPWINDOW, 0 );
Dlg->ChangeIcon( IDI_DIALOG );
// コンボボックスオブジェクトのインスタンス化
Combo = new LboxCombobox( ::GetDlgItem( hDlg, IDC_COMBO1 ) );
// データ追加
Combo->Add( "1", "MySQL" );
Combo->Add( "2", "SQLServer" );
Combo->Add( "3", "PostgreSQL" );
Combo->Add( "4", "MDB" );
Combo->Select( 0 );
// このプログラムが存在するディレクトリ
Tool.ProgramDirectory( LPath );
LPath += "\\result.txt";
return TRUE;
case WM_COMMAND:
if( LOWORD(wParam) == IDOK ) {
// 文字列オブジェクト
LboxString LWork;
// 選択されたデータの取得
Combo->SelectedGetData( LWork );
// テキストファイルオブジェクトで書き出し
Text.WriteOpen( LPath );
Text.PutPrintf( "%s\n", "TRUE" );
Text.PutPrintf( "%s\n", LWork.szLboxString );
Text.Close();
::EndDialog(hDlg, LOWORD(wParam));
return TRUE;
}
if( LOWORD(wParam) == IDCANCEL ) {
// テキストファイルオブジェクトで書き出し
Text.WriteOpen( LPath );
Text.PutPrintf( "%s\n", "FALSE" );
Text.Close();
::EndDialog(hDlg, LOWORD(wParam));
return TRUE;
}
break;
}
return FALSE;
}