クラスのプロパティを編集できるようにJvInspectorを使用しています。TColorプロパティは、JvInspectorエディターに「clRed」などとして表示され、同様に入力された色名を受け入れます。TFontDialogを開く省略記号ボタンがあるTFontの横に表示されるのと同じ機能が本当に必要です。TColorプロパティの場合は、TColorDialog(または自分のもの)が必要です。JvInspectorが特定の編集でTJvInspectorFontItemを宣言した方法はわかりますが、TColor編集のためにインスペクターに来るように指示する方法がわかりません-TColorタイプと新しい編集機能を追加できるレジスターが表示されることを期待していました。
このSOの質問から次のように回避策を講じると、TColorDlgを開くために使用できる「クリック時」機能が得られますが、ユーザーにとって直感的ではなく、省略記号ボタンソリューションほど優れていません。
procedure TSimpleMainForm.ItemClick(ASender: TObject);
begin
ShowMessage(JvInspector1.Selected.Name); // << my edit would go here
Abort; // don't change the value by the default double click handler
end;
procedure TSimpleMainForm.JvInspector1BeforeEdit(Sender: TObject;
Item: TJvCustomInspectorItem; Edit: TCustomEdit);
begin
TEdit(Edit).OnClick := ItemClick;
end;
誰かが私を助けたり、適切なドキュメントを教えてもらえますか?ありがとう