ツリービューでノードを選択している場合のみコンテキストメニューを表示させる方法。
※ツリービューのコンテキストメニューのプロパティは既に設定されているものとする
ツリービューもリストビューと考え方は同じ。
ContextMenuStripのOpeningイベントで選択ノードをチェックすればよい。
ただし、ツリービューでは右クリックではノード選択はされないので、
右クリックでもノードが選択される機能も追加する。
System::Void Form::frmTreeView_ContextMenuStrip_Opening(System::Object^ sender, System::ComponentModel::CancelEventArgs^ e)
{
System::Windows::Forms::TreeNode^ frmTreeNode;
// クリックされたノードを取得
frmTreeNode = frmTreeView->GetNodeAt( frmTreeView->PointToClient( Cursor->Position ) );
// ノードクリックじゃない場合は除外
if( frmTreeNode == nullptr )
{
e->Cancel = true;
return;
}
// ノードを選択状態にする
frmTreeView->SelectedNode = frmTreeNode;
}
イベントハンドラの登録は省略
投稿者 NMVL : 2006年5月29日 14:22