我做了一个可以实现你的要求,不过要完善一下,将动态建立的TComboBox释放
var
Form1: TForm1;
h:integer;
cmb:TComboBox;
implementation{$R *.DFM}procedure TForm1.ListBox1Click(Sender: TObject);begin
cmb:=Tcombobox.Create(nil);
cmb.Parent:=listbox1;
cmb.Top:=h;
cmb.Left:=0;
cmb.OnChange:=ComboBox1Change;
cmb.items.Add('xxxxxxxxx');
cmb.items.Add('hhhhhh');
cmb.items.Add('rrrrrrr');
end;procedure TForm1.ListBox1MouseMove(Sender: TObject; Shift: TShiftState; X,
Y: Integer);
begin h:=y;//获得ComboBox位置
end;procedure TForm1.ComboBox1Change(Sender: TObject);
begin
//传值
ListBox1.Items[0]:=Cmb.Items[1];
cmb.Visible:=false;
end;
var
Form1: TForm1;
h:integer;
cmb:TComboBox;
implementation{$R *.DFM}procedure TForm1.ListBox1Click(Sender: TObject);begin
cmb:=Tcombobox.Create(nil);
cmb.Parent:=listbox1;
cmb.Top:=h;
cmb.Left:=0;
cmb.OnChange:=ComboBox1Change;
cmb.items.Add('xxxxxxxxx');
cmb.items.Add('hhhhhh');
cmb.items.Add('rrrrrrr');
end;procedure TForm1.ListBox1MouseMove(Sender: TObject; Shift: TShiftState; X,
Y: Integer);
begin h:=y;//获得ComboBox位置
end;procedure TForm1.ComboBox1Change(Sender: TObject);
begin
//传值
ListBox1.Items[0]:=Cmb.Items[1];
cmb.Visible:=false;
end;
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货