|
|
// *********************************************************
// リストボックスに文字列を追加
// 戻り値 : 追加された位置
// *********************************************************
int LboxDlg::ListAdd(int nID, LPCTSTR pszBuffer)
{
return LboxListAdd( GetDlgItem(hDlg, nID), pszBuffer );
}
// *********************************************************
// リストボックスに文字列を挿入
// 戻り値 : 挿入された位置
// *********************************************************
int LboxDlg::ListInsert(int nID, int nIndex, LPCTSTR pszBuffer)
{
return LboxListInsert(
GetDlgItem(hDlg, nID),
nIndex,
pszBuffer
);
}
// *********************************************************
// リストボックスの指定行を削除
// 戻り値 : リスト内に残っている文字列の総数
// 戻り値 : 存在しない行を指定すると -1
// *********************************************************
int LboxDlg::ListDelete(int nID, int nIndex)
{
return LboxListDelete(
GetDlgItem(hDlg, nID),
nIndex
);
}
// *********************************************************
// リストボックスから文字列を取得
// 戻り値 : 取得した文字列の長さ
// *********************************************************
int LboxDlg::ListGetText(int nID, int nIndex, LPCTSTR pszBuffer, int nSize )
{
return LboxListGetText(
GetDlgItem(hDlg, nID),
nIndex,
pszBuffer,
nSize
);
}
// *********************************************************
// リストボックスの指定行を更新
// 戻り値 : 挿入された位置
// 戻り値 : 失敗すると -1
// *********************************************************
int LboxDlg::ListSetText(int nID, int nIndex, LPCTSTR pszBuffer)
{
return LboxListSetText(
GetDlgItem(hDlg, nID),
nIndex,
pszBuffer
);
}
// *********************************************************
// リストボックスの行数取得
// 戻り値 : 行数
// *********************************************************
int LboxDlg::ListCount(int nID )
{
return LboxListCount(
GetDlgItem(hDlg, nID)
);
}
// *********************************************************
// リストボックスの選択された行の取得
// 戻り値 : 選択された行(選択されていない場合は -1 )
// *********************************************************
int LboxDlg::ListSelectedRow(int nID )
{
return LboxListSelectedRow(
GetDlgItem(hDlg, nID)
);
}
// *********************************************************
// 選択した行の文字列を取得
// 戻り値 : 取得した文字列の長さ
// 戻り値 : エラーの場合は -1
// *********************************************************
int LboxDlg::ListSelectedGetText( int nID, LPCTSTR pszBuffer, int nSize )
{
return LboxListSelectedGetText(
GetDlgItem(hDlg, nID),
pszBuffer,
nSize
);
}
// *********************************************************
// 選択した行に文字列を設定
// 戻り値 : 挿入された位置
// 戻り値 : エラーの場合は -1
// *********************************************************
int LboxDlg::ListSelectedSetText( int nID, LPCTSTR pszBuffer )
{
return LboxListSelectedSetText(
GetDlgItem(hDlg, nID),
pszBuffer
);
}
// *********************************************************
// 選択した行を削除
// 戻り値 : リスト内に残っている文字列の総数
// 戻り値 : エラーの場合は -1
// *********************************************************
int LboxDlg::ListSelectedDelete( int nID )
{
return LboxListSelectedDelete(
GetDlgItem(hDlg, nID)
);
}
// *********************************************************
// リストボックスの指定行を選択
// 戻り値 : 無し
// *********************************************************
void LboxDlg::ListSelect(int nID, int nIndex )
{
LboxListSelect(
GetDlgItem(hDlg, nID),
nIndex
);
}
// *********************************************************
// リストボックスのリセット
// 戻り値 : 無し
// *********************************************************
void LboxDlg::ListReset(int nID )
{
LboxListReset(
GetDlgItem(hDlg, nID)
);
}
// *********************************************************
// リストボックスにダンプ結果を表示
// *********************************************************
void LboxDlg::ListDump(int nID, LPCTSTR pszBuffer, int nSize)
{
LboxListDump(
GetDlgItem(hDlg, nID),
pszBuffer,
nSize
);
}
// *********************************************************
// リストボックスにフォーマットした文字列を表示
// *********************************************************
void LboxDlg::ListPrintf(int nID, LPSTR FormatString, ...)
{
va_list marker;
char szBuffer[1024];
char *szNewBuff = new char[lstrlen(FormatString)+10];
lstrcpy( szNewBuff, FormatString );
va_start(marker, FormatString);
vsprintf(szBuffer, szNewBuff, marker);
va_end(marker);
unsigned char *pszToken;
int nRow = 0;
pszToken = _mbstok(
(unsigned char *)szBuffer,
(const unsigned char *)"\n"
);
while( pszToken != NULL ) {
LboxListInsert(
GetDlgItem(hDlg, nID),
nRow,
(LPCTSTR)pszToken
);
nRow++;
pszToken = _mbstok( NULL, (const unsigned char *)"\n" );
}
delete [] szNewBuff;
}
// *********************************************************
// クリップボードにコピー
// 行の終わりには、改行コードを付加
// bSelect が true の場合は 選択した行のみコピーする
// 戻り値 : true 成功, false 失敗
// *********************************************************
BOOL LboxDlg::ListCopyClipboard( int nID, BOOL bSelect )
{
return LboxListCopyClipboard(
GetDlgItem( LboxDlg::hDlg, nID ),
bSelect
);
}
| |
|
|
|
|
// *********************************************************
// エディット コントロールから文字列を取得
// 戻り値 : バッファに格納された文字列の長さ
// 戻り値 : エラーの時は -1
// *********************************************************
int LboxDlg::EditGetText(int nID, LPSTR pszBuffer, int nSize )
{
int ret;
ret = GetDlgItemText(
hDlg,
nID,
pszBuffer,
nSize
);
if ( ret == 0 ) {
return -1;
}
return ret;
}
// *********************************************************
// エディット コントロールに文字列をセット
// 戻り値 : 0 以外
// 戻り値 : エラーの時は 0
// *********************************************************
int LboxDlg::EditSetText(int nID, LPCTSTR pszBuffer )
{
int ret;
ret = SetDlgItemText(
hDlg,
nID,
pszBuffer
);
return ret;
}
// *********************************************************
// エディット コントロールに整数値をセット
// 戻り値 : 0 以外
// 戻り値 : エラーの時は 0
// *********************************************************
int LboxDlg::EditSetInt(int nID, int nValue )
{
int ret;
ret = SetDlgItemInt(
hDlg,
nID,
(UINT)nValue,
true
);
return ret;
}
// *********************************************************
// エディットコントロールのテキストの文字数を制限
// 戻り値 : 無し
// *********************************************************
void LboxDlg::EditLimitText(int nID, int nSize )
{
LboxEditLimitText(
GetDlgItem(hDlg, nID),
nSize
);
}
// *********************************************************
// エディットコントロール内のテキストを選択状態にする
// 戻り値 : 無し
// *********************************************************
void LboxDlg::EditSelect(int nID )
{
LboxEditSelect(
GetDlgItem(hDlg, nID)
);
}
// *********************************************************
// フォーカスの設定
// 戻り値 : 以前にフォーカスを持っていたウィンドウのハンドル
// *********************************************************
HWND LboxDlg::EditFocus(int nID )
{
HWND hWnd;
hWnd = LboxEditFocus(
GetDlgItem(hDlg, nID)
);
return hWnd;
}
// *********************************************************
// 読み取り専用モードの設定と解除
// 戻り値 : 0 以外
// 戻り値 : エラーは 0
// *********************************************************
int LboxDlg::EditReadonly(int nID, BOOL bFlg )
{
int ret;
ret = LboxEditReadonly(
GetDlgItem(hDlg, nID),
bFlg
);
return ret;
}
| |
|
|
|
|
// *********************************************************
// ステータスバーの実装
// 戻り値 : 無し
// *********************************************************
void LboxDlg::StatusCreate( int nID )
{
if ( LboxDlg::hStatus != NULL ) {
DestroyWindow(
LboxDlg::hStatus
);
}
LboxDlg::hStatus =
CreateWindowEx(
0,
STATUSCLASSNAME,
(LPCTSTR)NULL,
WS_CHILD | WS_VISIBLE,
0, 0, 0, 0,
LboxDlg::hDlg,
(HMENU)(nID),
LboxGetInstance(GetParent(LboxDlg::hDlg)),
NULL
);
SendMessage(
LboxDlg::hStatus,
SB_SIMPLE,
(WPARAM)true,
0L
);
}
// *********************************************************
// ステータスバーに文字列を表示
// 戻り値 : 無し
// *********************************************************
void LboxDlg::StatusSetText( LPTSTR szText )
{
if ( LboxDlg::hStatus != NULL ) {
SendMessage(
LboxDlg::hStatus,
SB_SETTEXT,
(WPARAM)255,
(LPARAM)szText
);
}
}
// *********************************************************
// ステータスバーより文字列を取得
// 戻り値 : 無し
// *********************************************************
void LboxDlg::StatusGetText( LPTSTR szText )
{
if ( LboxDlg::hStatus != NULL ) {
SendMessage(
LboxDlg::hStatus,
SB_GETTEXT,
(WPARAM)0,
(LPARAM)szText
);
}
}
| |
|
|
|