2

クラスのプロパティを編集できるように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;

誰かが私を助けたり、適切なドキュメントを教えてもらえますか?ありがとう

4

1 に答える 1

1

この記事には、例を示すための優れた方法がいくつかありますhttp://www.neugls.info/the-tjvinspector-component-of-jvcl/

サブタイトル「独自のアイテムの作成方法」の下に、カラーダイアログのコード例があります。

于 2013-01-27T19:18:26.613 に答える