1

TJvComboEditコントロール(Jedi Visual Componentsライブラリ、jvclから)を含むフォームがあります。このコントロールにはAutoCompleteListがあり、AutoCompleteOptionsをacoUpDownKeyDropsListに設定すると、実行時に上または下のキーを押すことでこのリストを表示できます。

これまでのところ、これで問題ありませんが、それに加えて、コントロールのボタンにもそのリストを表示したいのですが(TComboBoxボタンのように)、それを行う方法が見つかりません。リストの表示は、リストを表示するためのAPIを公開しない内部IAutoCompleteWindowsインターフェイスによって行われているようです。

私は何かが足りないのですか?または、代わりに使用できる他のコントロールはありますか?(明らかなTComboBoxは別として)?

4

1 に答える 1

2

はオートコンプリート機能にandインターフェイスをTJvComboEdit使用し、それらのドロップダウンリストを手動で呼び出す方法はありません。IAutoCompleteIAutoComplete2

次のハックを使用して、フォーカスをに設定し、TJvComboEditをシミュレートできます。↓</kbd> key.

procedure TForm1.Button1Click(Sender: TObject);
begin
  if JvComboEdit1.CanFocus then
  begin
    JvComboEdit1.SetFocus;
    keybd_event(VK_DOWN, 0, 0, 0);
    keybd_event(VK_DOWN, 0, KEYEVENTF_KEYUP, 0);
  end;
end;
于 2012-01-31T11:03:11.333 に答える