CMFCPropertyGridPropertyにユーザーが編集可能な値のリストを保持する標準的な方法はありますか?セミコロン区切り文字を使用した文字列を考えています(これはWindowsの標準のようです)。このための編集インターフェースが必要な場合、どのように構築しますか?
1473 次
1 に答える
2
1つのオプション:
を継承CMFCPropertyGridProperty
してオーバーライドHasButton
し、を返すことができますTRUE
。これにより、値フィールドの右側に省略記号( "...")ボタンが表示されます。オーバーライドOnClickButton
して、値のリストを編集するためのユーザーインターフェイスを提供します。リストコントロールとリスト内のアイテムを追加/削除/編集する方法を備えたダイアログをポップアップできます。オーバーライドFormatProperty
して値フィールドに値のリストを表示し、ResetOriginalValue
コードをオーバーライドして実装して、作成した値を復元します。
別のオプション:
継承CMFCPropertyGridProperty
してオーバーライドしますOnKillFocus
。ユーザーが入力した値が許可されているフォーマット(セミコロンで区切られた整数のリストなど)に違反している場合は、警告をポップアップして戻りFALSE
、編集がコミットされないようにします。
于 2011-10-02T21:22:21.163 に答える