Objectarx MFC は ListControl を追加し、可視性を制御します

最も重要なことは、ボタンのクリックで以下のリストを表示し、それをドロワー メニュー ツールにすることです。
この記事では、ツールバーをクリックしてリストの表示/非表示を制御する方法について説明します。

参照:

MFC でコントロールの非表示と表示を実装する
[MFC] コントロールが非表示になっているかどうかを確認する


MFCの検索コンポーネントはWPFやWinFormの名前と同じIDで管理されており、このコンポーネントを取得することで操作を行います。可視性を制御するためのインターフェイスは次のとおりですShowWindow(TRUE)。コンポーネントのステータスを取得するためのインターフェイスは次のとおりです。int bVisible = ((CWnd*)GetDlgItem(IDC_LIST1))->GetStyle() & WS_VISIBLE;


メインコード:

  1. 初期化中にリストを非表示に変更します
//-----------------------------------------------------------------------------
void CMenuBarChildDlg::DoDataExchange (CDataExchange *pDX) {
    
    
	CAcUiDialog::DoDataExchange(pDX);
	//{
    
    {AFX_DATA_MAP(CMenuBarChildDlg)
	//}}AFX_DATA_MAP
	//在此处增加项目初始化
	CEdit* edit = (CEdit*)GetDlgItem(IDC_LIST1);
	edit->ShowWindow(FALSE);

	DDX_Control(pDX, IDC_LIST1, m_list);
}

  1. ボタンをクリックすると指定したリストを表示します
void CMenuBarChildDlg::OnBnClickedButton1()
{
    
    
	// TODO: 在此添加控件通知处理程序代码

	CEdit* edit = (CEdit*)GetDlgItem(IDC_LIST1);
	int bVisible = ((CWnd*)GetDlgItem(IDC_LIST1))->GetStyle() & WS_VISIBLE;

	if(bVisible == 0)
	{
    
    
		edit->ShowWindow(TRUE);
	}
	else
	{
    
    
		edit->ShowWindow(FALSE);
	}
}

おすすめ

転載: blog.csdn.net/qq_41059339/article/details/132432226