BCCFormandBCCSkeltonのプログラミング作法は、完成イメージに基づき、まずリソースを作成することから始めます。
ということで、まずはアプリのアイコンを作ります。お好みでよいのですが、添付ツールのEZImageを使って次のようにしてみました。
また、他のイメージリソースとして、ツールバービットマップ(ここでは"ToolBar.bmp"としておきます)が必要です。メニュー構成に合わせてTBEditorで作る必要があります。以下に作成例を載せます。
これらを元にBCCFormでメニュー、ダイアログなどのリソースを作ります。
以下は作成したリソースのコードです。(解説:)文も載せます。
//-----------------------------------------
// BCCForm Ver 2.41
// An Easy Resource Editor for BCC
// Copyright (c) February 2002 by ysama
//-----------------------------------------
#include "ResIDList.h"
//----------------------------------
// ダイアログ (IDD_EDIT)
//(解説:表の列項目である「メンーバシップ」、「ログインID」、「パスワード」、「備考(任意)」の入力用ダイアログです。
//夫々のエディットコントロールとラベルを付けています。)
//----------------------------------
IDD_EDIT DIALOG DISCARDABLE 0, 0, 270, 150
EXSTYLE WS_EX_DLGMODALFRAME
STYLE WS_POPUP | WS_DLGFRAME | WS_CAPTION | WS_SYSMENU | DS_SETFONT | DS_CENTER
CAPTION "IDとパスワードの編集"
FONT 8, "MS 明朝"
{
CONTROL "", IDC_EDIT1, "EDIT", WS_CHILD | WS_BORDER | WS_VISIBLE | WS_TABSTOP | ES_AUTOHSCROLL | ES_LEFT, 87, 9, 171, 15, WS_EX_CLIENTEDGE
CONTROL "", IDC_EDIT2, "EDIT", WS_CHILD | WS_BORDER | WS_VISIBLE | WS_TABSTOP | ES_AUTOHSCROLL | ES_LEFT, 87, 30, 171, 15, WS_EX_CLIENTEDGE
CONTROL "", IDC_EDIT3, "EDIT", WS_CHILD | WS_BORDER | WS_VISIBLE | WS_TABSTOP | ES_AUTOHSCROLL | ES_LEFT, 87, 48, 171, 15, WS_EX_CLIENTEDGE
CONTROL "", IDC_EDIT4, "EDIT", WS_CHILD | WS_BORDER | WS_VISIBLE | WS_TABSTOP | ES_MULTILINE | WS_VSCROLL | ES_LEFT, 87, 66, 171, 48
CONTROL "編集終了", IDOK, "BUTTON", WS_CHILD | WS_VISIBLE | WS_TABSTOP | BS_DEFPUSHBUTTON, 198, 123, 60, 18
CONTROL "メンバーシップ", IDC_LABEL1, "STATIC", WS_CHILD | WS_VISIBLE | SS_NOTIFY | SS_SUNKEN, 6, 9, 75, 15
CONTROL "ログインID", IDC_LABEL2, "STATIC", WS_CHILD | WS_VISIBLE | SS_NOTIFY | SS_SUNKEN, 6, 30, 75, 15
CONTROL "パスワード", IDC_LABEL3, "STATIC", WS_CHILD | WS_VISIBLE | SS_NOTIFY | SS_SUNKEN, 6, 48, 75, 15
CONTROL "備考(任意)", IDC_LABEL4, "STATIC", WS_CHILD | WS_VISIBLE | SS_NOTIFY | SS_SUNKEN, 6, 66, 75, 15
}
//----------------------------------
// ダイアログ (IDD_SEARCH)
//(解説:検索文字列の入力用ダイアログです。)
//----------------------------------
IDD_SEARCH DIALOG DISCARDABLE 0, 0, 135, 48
EXSTYLE WS_EX_DLGMODALFRAME
STYLE WS_POPUP | DS_MODALFRAME | WS_CAPTION | WS_SYSMENU | DS_SETFONT | DS_CENTER
CAPTION "検索"
FONT 8, "MS 明朝"
{
CONTROL "", IDC_EDIT1, "EDIT", WS_CHILD | WS_BORDER | WS_VISIBLE | WS_TABSTOP | ES_AUTOHSCROLL | ES_LEFT, 3, 15, 126, 12, WS_EX_CLIENTEDGE
CONTROL "OK", IDOK, "BUTTON", WS_CHILD | WS_VISIBLE | WS_TABSTOP | BS_DEFPUSHBUTTON, 45, 30, 45, 15
CONTROL "検索する文字列", IDC_LABEL1, "STATIC", WS_CHILD | WS_VISIBLE | SS_NOTIFY, 6, 3, 123, 9
}
//----------------------------------
// ダイアログ (IDD_SORT)
//(解説:表の並べ替え用ダイアログです。サブアイテム(列)の指定、昇順・降順の指定を行います。)
//----------------------------------
IDD_SORT DIALOG DISCARDABLE 0, 0, 144, 87
EXSTYLE WS_EX_DLGMODALFRAME
STYLE WS_POPUP | DS_MODALFRAME | WS_CAPTION | WS_SYSMENU | DS_SETFONT | DS_CENTER
CAPTION "データの並べ替え"
FONT 8, "MS 明朝"
{
CONTROL "", IDC_COMBOBOX1, "COMBOBOX", WS_CHILD | WS_VISIBLE | WS_TABSTOP | CBS_DROPDOWNLIST | WS_VSCROLL, 12, 18, 120, 60
CONTROL "", IDC_COMBOBOX2, "COMBOBOX", WS_CHILD | WS_VISIBLE | WS_TABSTOP | CBS_DROPDOWNLIST | WS_VSCROLL, 12, 48, 120, 60
CONTROL "サブアイテムの選択", IDC_LABEL1, "STATIC", WS_CHILD | WS_VISIBLE | SS_NOTIFY, 15, 6, 93, 9
CONTROL "並べ替え方法", IDC_LABEL2, "STATIC", WS_CHILD | WS_VISIBLE | SS_NOTIFY, 15, 36, 93, 9
CONTROL "完了", IDOK, "BUTTON", BS_PUSHBUTTON | BS_CENTER | WS_CHILD | WS_VISIBLE | WS_TABSTOP, 51, 66, 39, 15
}
//----------------------------------
// ダイアログ (IDD_VERSION)
//(解説:バージョン表示用ダイアログです。)
//----------------------------------
IDD_VERSION DIALOG DISCARDABLE 0, 0, 160, 40
EXSTYLE WS_EX_DLGMODALFRAME
STYLE WS_POPUP | WS_VISIBLE | WS_CAPTION | DS_MODALFRAME | DS_3DLOOK | DS_CENTER
CAPTION "バージョン情報"
FONT 9, "Times New Roman"
{
CONTROL IDI_ICON, 0, "STATIC", SS_SUNKEN | SS_ICON | WS_CHILD | WS_VISIBLE, 12, 10, 32, 32
CONTROL "", IDC_VERTXT, "STATIC", SS_CENTER | SS_SUNKEN | WS_CHILD | WS_VISIBLE, 42, 8, 80, 24
CONTROL "OK", IDOK, "BUTTON", BS_PUSHBUTTON | BS_CENTER | WS_CHILD | WS_VISIBLE | WS_TABSTOP, 130, 14, 20, 12
}
//-------------------------
// メニュー(IDM_MAIN)
//(解説:メニューです。ツールバービットマップはこれらに対応しています。)
//-------------------------
IDM_MAIN MENU DISCARDABLE
{
POPUP "ファイル(&F)"
{
MENUITEM "データを開く(&O)", IDM_OPEN
MENUITEM SEPARATOR
MENUITEM "データの保存(&S)", IDM_SAVE
MENUITEM SEPARATOR
MENUITEM "終了(&X)", IDM_EXIT
}
POPUP "編集(&E)"
{
MENUITEM "追加(&A)", IDM_ADD
MENUITEM "検索(&S)", IDM_SEARCH
MENUITEM "編集(&E)", IDM_EDIT
MENUITEM "削除(&D)", IDM_DELETE
}
POPUP "表示(&V)"
{
MENUITEM "並び替え(&S)", IDM_SORT
}
POPUP "ヘルプ(&H)"
{
MENUITEM "本ソフトの使い方(&H)", IDM_HELP
MENUITEM SEPARATOR
MENUITEM "バージョン情報(&V)", IDM_VERSION
}
}
//--------------------------
// イメージ(IDI_ICON)
//(解説:作成したアプリケーションアイコンです。実際の<ファイルパス>は各自の開発環境で変わります。)
//--------------------------
IDI_ICON ICON DISCARDABLE "C:\<ファイルパス>\IDList\IDList.ico"
//--------------------------
// イメージ(IDI_TOOLBAR)
//(解説:作成したツールバービットマップです。)
//--------------------------
IDI_TOOLBAR BITMAP DISCARDABLE "C:\<ファイルパス>\IDList\ToolBar.bmp"
今日はここまで、です。