Delphi 2010 のツールバーにコンボボックスを配置しようとしています。アプリは MDI テキスト エディタです。ツールバーにコンボボックスを配置してアプリを実行すると、コンボボックスをクリックすると、新しい子ウィンドウが開き、ドロップダウンして選択できなくなります。ツールバーとコンボボックスをコントロールバーとクールバーの両方に配置しようとしましたが、どちらも同じ結果になりました。公平を期すために、ツールバーを再作成したわけではなく、他のコントロールに移動しただけです。
誰もこれを以前に見たことがありますか?どうすれば回避できますか? もう一度試してみましたが、同じ結果でした。これがコンボボックス1のコードです。
procedure TMainForm.ComboBox1Change(Sender: TObject);
begin
exec_sql(combobox1.Text);
end;
ツールバーのクリックはなく、現在新しい子を開くボタンはありません。
exec_sql は次のようになります。
procedure TMainForm.exec_sql(MachName:string);
var
sql_str: string;
parm_str: string;
begin
mach.Free;
parm_str := MachName;
sql_str := 'Select * from machines where MACHINE_NAME = :parm_str';
with adoquery1 do
begin
close;
sql.Text := sql_str;
with Parameters.ParamByName('parm_str') do
begin
DataType := ftString;
Value := parm_str;
end;
open;
mach := TMachineData.get_record_data(ADOQuery1);
end;
ShowMessage('Current Machine Is ' + mach.MACHINE_NAME);
end;