|
|
case WM_COMMAND:
if ( HIWORD(wParam) == LBN_DBLCLK ) {
nIdx = (int)ListBox_GetCaretIndex( (HWND)lParam );
ListBox_GetText( (HWND)lParam, nIdx, Buffer);
SetWindowText( GetDlgItem( hDlg, IDC_EDIT ), Buffer );
}
| |
|
LBN_DBLCLK はリストボックスからの専用通知メッセージで、リストボックス
をダブルクリックすると親ウインドウに WM_COMMAND メッセージと共に送
られます
ListBox_GetCaretIndex は現在の行を返すマクロで、LB_GETCARETINDEX
を用います。
|
|
|
if( LOWORD(wParam) == IDC_KENSU ) {
nCount = (int)ListBox_GetCount( GetDlgItem( hDlg, IDC_LIST ) );
wsprintf( Buffer, "%d", nCount );
SetWindowText( GetDlgItem( hDlg, IDC_COUNT ), Buffer );
return TRUE;
}
| |
|
|
リストボックス内の先頭に表示されている項目のインデックスを取得する |
|
|
if( LOWORD(wParam) == IDC_TOP ) {
nCount = (int)ListBox_GetTopIndex( GetDlgItem( hDlg, IDC_LIST ) );
wsprintf( Buffer, "%d", nCount );
SetWindowText( GetDlgItem( hDlg, IDC_COUNT ), Buffer );
return TRUE;
}
| |
|
|
|