私はメインフレームを持っています。誰かがボタンを押すと、CDialogEX が開きます。
開いた後、タイトルやアイコンのない空のタスクバータブが表示されます...
メインフレームの子ウィンドウとして、タスクバータブなしで開きたいです。
スタイルなどを使用してみましたが、何も機能しません。
何か案は?
NULL
親ウィンドウとして渡していると思います。メイン アプリケーションのウィンドウのウィンドウ ハンドルを渡します。作成されたウィンドウを渡すNULL
と、所有されていない最上位ウィンドウになり、タスクバー ボタンが表示されます。
あなたのための参考文献:
いよいよ本番。宣言する
CWnd m_wndHidden;
あなたのクラスで。
次に、次のメソッドを実装します
BOOL CMyMDIChildFrame::PreCreateWindow(CREATESTRUCT& cs)
{
if (!__super::PreCreateWindow(cs))
return FALSE;
// Create hidden window
if (!::IsWindow(m_wndHidden.m_hWnd))
{
pstrOwnerClass = AfxRegisterWndClass(0);
if (!m_wndHidden.CreateEx(0, pstrOwnerClass, _T(""), WS_POPUP,
CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT,
NULL, 0))
return FALSE;
}
cs.hwndParent = m_wndHidden.m_hWnd;
return TRUE;
}
私が提供した最初と最後のリンクは、このアプローチに基づいています。