メニューの項目数

  追加・削除



メニューバー
  
// *********************************************************
// メニュー処理
// *********************************************************
void MyClass::MenuAction()
{
	LboxMenu Menu;

	Menu.SetBaseMenu( this->hWnd );

	LboxTool Tool;

	if ( Tool.IsShift() ) {
		Menu.ResetItem( "", 2 );
	}
	else {
		Menu.AddItem( "", "追加1", 10001 );
		Menu.AddItem( "", "追加2", 10002 );
		Menu.AddItem( "", "追加3", 10003 );
		Menu.AddItem( "", "追加4", 10004 );
	}

	this->DrawMenuBar();
}
  

メニューバーのポップアップメニュー
  
// *********************************************************
// メニュー処理
// *********************************************************
void MyClass::MenuAction()
{
	LboxMenu Menu;

	Menu.SetBaseMenu( this->hWnd );

	LboxTool Tool;

	if ( Tool.IsShift() ) {
		Menu.ResetItem( "0", 2 );
	}
	else {
		Menu.AddItem( "0", "追加1", 10001 );
		Menu.AddItem( "0", "追加2", 10002 );
		Menu.AddItem( "0", "追加3", 10003 );
		Menu.AddItem( "0", "追加4", 10004 );
	}
}
  

ポップアップメニューの中のポップアップメニュー
  
// *********************************************************
// メニュー処理
// *********************************************************
void MyClass::MenuAction()
{
	LboxMenu Menu;

	Menu.SetBaseMenu( this->hWnd );

	LboxTool Tool;

	if ( Tool.IsShift() ) {
		Menu.ResetItem( "0,3" );
	}
	else {
		Menu.AddItem( "0,3", "追加1", 10001 );
		Menu.AddItem( "0,3", "追加2", 10002 );
		Menu.AddItem( "0,3", "追加3", 10003 );
		Menu.AddItem( "0,3", "追加4", 10004 );
	}
}
  
※ メニュー項目を追加したい位置にあらかじめポップアップメニューを作成しておきます

リストビューのポップアップメニュー
  
// *********************************************************
// メニュー処理
// *********************************************************
void MyClass::MenuAction()
{
	LboxMenu Menu;

	Menu.SetBaseMenu( LView->hMenu );

	LboxTool Tool;

	if ( Tool.IsShift() ) {
		Menu.ResetItem( "1", 1 );
	}
	else {
		Menu.AddItem( "1", "追加1", 10001 );
		Menu.AddItem( "1", "追加2", 10002 );
		Menu.AddItem( "1", "追加3", 10003 );
		Menu.AddItem( "1", "追加4", 10004 );
	}
}
  
LView->hMenu はメニューリソースをメニュー化したハンドルで、リストビューのポップアップメニュー
は、LView->CreatePopup( IDC_APP01, n ); でその中の n を表示しています

※ ここで指定されている "1" は n を指します


  
セパレータの追加は

AddSeparator( "" );
AddSeparator( "n" );
AddSeparator( "n,n" );
  



  テキスト処理



変更
  
// *********************************************************
// メニュー処理
// *********************************************************
void MyClass::MenuAction()
{
	LboxMenu Menu;

	Menu.SetBaseMenu( this->hWnd );

	Menu.SetText( "0", IDM_FILEOPEN, "テキスト変更" );

	// 位置指定する場合は以下の記述
//	Menu.SetText( "0", "1", "テキスト変更" ); 

}
  

取得
  
// *********************************************************
// メニュー処理
// *********************************************************
void MyClass::MenuAction()
{
	LboxMenu Menu;
	LboxString LWork;

	Menu.SetBaseMenu( this->hWnd );

	Menu.GetText( "0", &LWork, IDM_FILEOPEN );

// 位置指定する場合は以下の記述
//	Menu.GetText( "0", &LWork, "1" );

	MsgOk( &LWork );
}
  



  チェック・使用不可

チェック
  
// *********************************************************
// メニュー処理
// *********************************************************
void MyClass::MenuAction()
{
	LboxMenu Menu;

	Menu.SetBaseMenu( this->hWnd );

	Menu.Check( "0", IDM_FILEOPEN, true );

// 位置指定する場合は複数指定可能
//	Menu.Check( "0", "1,2,3", true );

}
  

使用不可
  
// *********************************************************
// メニュー処理
// *********************************************************
void MyClass::MenuAction()
{
	LboxMenu Menu;

	Menu.SetBaseMenu( this->hWnd );

	Menu.Disable( "0", IDM_FILEOPEN, true );

// 位置指定する場合は複数指定可能
//	Menu.Disable( "0", "1,2,3", true );

}
  



  メニューの項目数

  
// *********************************************************
// メニュー処理
// *********************************************************
void MyClass::MenuAction()
{
	LboxMenu Menu;

	Menu.SetBaseMenu( this->hWnd );

	MsgOk( "%d", Menu.Count( "0" ) );

}
  










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





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

SQLの窓フリーソフト

素材

一般WEBツールリンク

SQLの窓

フリーソフト

JSライブラリ