MFC:CSplitterWndキャレットとは一体何ですか?
質問
CSplitterWndクラスのコンテキストでキャレットとは一体何ですか? CSplitterWndsに明示的に関連するドキュメントが見つかりません...
編集:具体的には、これらの機能が実際に何を行うか実際に:
CWnd * pCurView = m_wndSplitter2.GetPane(2, 0);
pCurView->ShowCaret()
pCurView->HideCaret()
EDIT2:キャレットとは何かを知っています。CSlitterWndクラスのコンテキスト内の関数について具体的に尋ねています。 MSDNのドキュメントを見ましたが、実際の説明はありません。
解決
どのCWndもキャレットを持つことができますが、実際にCreateCaretが最初にキャレットを表示するのはCWnd継承者のみです。 @DannySmurfは、表示と非表示が可能なキャレットを作成するCViewの1つの例-CEditView-を提供します。
ペインにある特定の種類のCViewに応じて、ShowCaretはおそらく無関係です。 CSplitterWndとは関係ありません。
他のヒント
通常の意味ではキャレットです。同じウィンドウで2つのCEditViewを分割する場合にのみ適用されます。
Windows SDKの世界では、カーソルは実際にはマウスポインターであり、キャレットはテキストコントロールなどに表示される点滅バーです。
具体的に;
CWnd * pCurView = m_wndSplitter2.GetPane(2, 0);
分割ウィンドウに囲まれたCView派生クラスのようにペインを取得します
pCurView->ShowCaret()
そのビューのテキスト編集位置に小さな垂直バーを表示します。これは、CEditなどのテキスト編集コントロールで使用されるカーソルです
pCurView->HideCaret()
キャレット/垂直カーソルを非表示にします。
テキストカーソルです。
初期バージョンのウィンドウでは、テキストカーソルは校正者のキャレットマークのようでした(ベースラインの^のみ)。そのマークは、校正者がテキストを挿入する場所を示すために使用するものであるため、これはある程度意味があります。
それでもキャレットと呼ぶのは奇妙に思えますが、おそらく「カーソル」という言葉を使用することを既に決めていたためでしょう。誰もがマウスポインターと呼んでいます。
おそらく、画面上の点滅する垂直バーであるカーソルを指しているのでしょう。