VC++6.0 MFC ダイアログバーを横に並べるには?
MainFrameでコントロールバーをいくつか作成しました。
下記のようにやると上下につながります。
ABarの右側にBBarをくっつけるには、どうしたらいいのでしょうか?
ちなみにALIGN_RIGHTにするとメインフレームの右端に張り付いてしまいます。
//ABarを作成
if( !m_wndABar.Create( this, IDD_DLGBAR_A, CBRS_TOP, IDD_DLGBAR_A ) )
{
TRACE0("Failed to create DlgBar\n");
return -1; // 作成に失敗
}
// ドッキング設定
m_wndABar.EnableDocking(CBRS_ALIGN_ANY);
DockControlBar(&m_wndAiBar,AFX_IDW_DOCKBAR_TOP);
//BBarを作成
if( !m_wndBBar.Create( this, IDD_DLGBAR_B, CBRS_TOP , IDD_DLGBAR_B ) )
{
TRACE0("Failed to create DlgBar\n");
return -1; // 作成に失敗
}
// ドッキング設定
m_wndBBar.EnableDocking(CBRS_ALIGN_ANY);
DockControlBar(&m_wndBBar,AFX_IDW_DOCKBAR_TOP);
No.2ベストアンサー
- 回答日時:
#1です。
すみません。#1で注意点があります。
ダイアログバー「ABar、または、BBar」が、CToolBarではなく、
CDialogBarだった場合は、#1の参考サイトの関数をそのまま
使用すると、引数の型違いでコンパイルエラーとなるかもしれ
ません。
もし、エラーとなった場合は、関数 DockControlBarLeftOf()
の定義を以下のように修正する必要があると思います。
<変更前>
・ヘッダーの定義
void DockControlBarLeftOf( CToolBar* Bar, CToolBar* LeftOf );
・本体側の定義
void CMainFrame::DockControlBarLeftOf( CToolBar* Bar, CToolBar* LeftOf )
{
:
}
<変更後>
・ヘッダーの定義
void DockControlBarLeftOf( CControlBar* Bar, CControlBar* LeftOf );
・本体側の定義
void CMainFrame::DockControlBarLeftOf( CControlBar* Bar, CControlBar* LeftOf )
{
:
}
以上です。
No.1
- 回答日時:
こんにちは。
下記サイトのサンプルコードが参考になると思います。
★複数のツールバーを任意の位置に置く
http://www.geocities.co.jp/SiliconValley-SanJose …
ご提示の構成であれば、
MainFrameクラスに、上記サイトの下記関数
DockControlBarLeftOf( CToolBar* Bar, CToolBar* LeftOf )
を追加し、ツールバー BBar のドッキング設定の際に、
DockControlBar( &m_wndBBar, AFX_IDW_DOCKBAR_TOP );
の替わりに、
DockControlBarLeftOf( &m_wndBBar, &m_wndABar );
・第1引数に、これからドッキングさせる自身のツールバーのポインタ
・第2引数に、右隣へドッキングさせる対象となるツールバーのポインタ
⇒これからドッキングさせる自身のツールバーの左隣となるツールバー
のポインタ
とすれば良いように思います。
以上です。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- JavaScript jQueryでのドラッグアンドドロップについて 1 2022/07/07 21:04
- JavaScript jQueryでのドラッグアンドドロップについて 1 2022/07/30 09:10
- PHP php テーブルが作成できない 1 2022/11/17 23:41
- MySQL php テーブルを作れない 2 2022/11/17 18:22
- JavaScript スマフォではボタンを表示させたくない 2 2023/01/20 14:26
- Windows 10 VirtualBox 7のゲストOSでの物理HDDパーティションのマウント方法 2 2023/05/04 13:01
- CGI perlで書いたcgiでsqliteの使い方を教えてください 2 2023/05/08 21:29
- Visual Basic(VBA) EXCEL VBAにて動的にCheckBOXを複数作成し、同BOXにイベントを追加したい 1 2023/03/16 07:05
- 英語 The P2s and P4s of bilateral mandible were extract 1 2022/12/11 18:09
- MySQL MySQLのテーブル作成でハイフン - は使用できないのでしょうか? 2 2022/10/21 16:50
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
セグメントエラー
-
init関数の意味
-
C言語のポインタに直接アドレス...
-
LPSTR型の初期化について
-
fopne で失敗する原因
-
Run-Time Check Failure #3とい...
-
NULLとブランクの違い
-
str[i] は *(str + i) と同義で...
-
エラーの意味
-
ハンドル、アドレス、ポインタ...
-
型変換について
-
参照型で受け取った引数をポイ...
-
[C言語] NULLは必ず0(番地)です...
-
C言語の関数と配列に関する質問
-
IStream / VBA
-
どうしてエラーになるかわかり...
-
DelphiでCreateProcessがうまく...
-
配列アドレスの減算
-
C言語でのconstを返す関数
-
Voidポインタで受け取った変数...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
セグメントエラー
-
C言語のポインタに直接アドレス...
-
init関数の意味
-
戻り値で構造体を返すことは可...
-
fopne で失敗する原因
-
C言語の関数と配列に関する質問
-
Run-Time Check Failure #3とい...
-
LPSTR型の初期化について
-
ExcelVBAでのkernel32(64bit)
-
main(int argc,char **argv[])...
-
アプリを32bitから64bit移行
-
連結リスト 要素の入れ替え
-
ハンドルはポインタか
-
Cで作成したDLL関数をVBから呼...
-
C言語でのconstを返す関数
-
NULLとブランクの違い
-
エラーの意味
-
DLL<->VB間での受け渡し(文字...
-
ハンドル、アドレス、ポインタ...
-
【C言語】戻り値が構造体の関数
おすすめ情報