2

CMFCPropertyGridPropertyにユーザーが編集可能な値のリストを保持する標準的な方法はありますか?セミコロン区切り文字を使用した文字列を考えています(これはWindowsの標準のようです)。このための編集インターフェースが必要な場合、どのように構築しますか?

4

1 に答える 1

2

1つのオプション

を継承CMFCPropertyGridPropertyしてオーバーライドHasButtonし、を返すことができますTRUE。これにより、値フィールドの右側に省略記号( "...")ボタンが表示されます。オーバーライドOnClickButtonして、値のリストを編集するためのユーザーインターフェイスを提供します。リストコントロールとリスト内のアイテムを追加/削除/編集する方法を備えたダイアログをポップアップできます。オーバーライドFormatPropertyして値フィールドに値のリストを表示し、ResetOriginalValueコードをオーバーライドして実装して、作成した値を復元します。

別のオプション

継承CMFCPropertyGridPropertyしてオーバーライドしますOnKillFocus。ユーザーが入力した値が許可されているフォーマット(セミコロンで区切られた整数のリストなど)に違反している場合は、警告をポップアップして戻りFALSE、編集がコミットされないようにします。

于 2011-10-02T21:22:21.163 に答える