私が読んだ内容here(ユーザーが編集コントロールを選択したとき、逆のビデオを使ってそのテキストをハイライト表示すると)、CEditが強調表示する必要がありますそれをクリックするとselectと同じです)。CMFCPropertyGridPropertyとCEditのテキスト自動選択
CMFCPropertyGridPropertyでCMFCPropertyGridCtrlを使用しています。しかし、グリッド(1つのプロパティ値)をクリックすると、何も選択されません。
私が知っているもの:プロパティは内部的にプロパティ値を手動で編集するためのCEditを作成します。作成され、そのフォントが設定されます。その後、SetFocusが呼び出され、そのUpdateWindowの後に - これは編集ボックスを再描画し、最初の文字の前にカーソルを設定します。その後、マウスのクリックが再び呼び出され、編集ボックスをクリックします。これは正しいようです。しかし、テキストは選択されません。
CMFCPropertyGridPropertyから派生した独自のプロパティクラスを作成しようとしました。私はこの後SetSelを呼び出しました。それは本当に私のテキストを選択しますが、次にそれを選択解除します(次の再描画で)。私が達成したことは、Redrawの後、開始からマウスクリックまでのテキストのみが選択されたことです(4番目の文字をクリックしたとき、最初の4文字のみが選択されました)。
私の質問:
万一CEditの最初のマウスがクリックした後、実際にautomaticalyテキストを選択しますか? (リソースがありますか?)
CMFCPropertyGridPropertyでこれが動作しないのはなぜですか?
CMFCPropertyGridCtrlとCMFCPropertyGridPropertyは、mfcソースコードディレクトリのafxpropertygridctrl.h/.cppにあります。