c# 如何让comboBox下拉菜单按item文字宽度自动调节宽度

是下拉菜单的宽度,不是高度

unit Unit1;interfaceuses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls;type TForm1 = class(TForm) ComboBox1: TComboBox; Button1: TButton; Edit1: TEdit; procedure Button1Click(Sender: TObject); procedure FormMouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer); private { Private declarations } public { Public declarations } end;var Form1: TForm1;implementation{$R *.dfm}procedure TForm1.Button1Click(Sender: TObject);beginend;procedure TForm1.FormMouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer);var strlen:integer;i:integer;begin strlen:=length(combobox1.Items[0]); for i:=1 to combobox1.Items.Count-1 do//计算最大长度 begin if length(combobox1.Items[i])>strlen then strlen:=length(combobox1.Items[i]); end; combobox1.Width:=strlen*9;//控制width属性end;end.我把代码写在窗体的鼠标移动事件中了,你也可以写在其他过程中。主要是控制组合框的width属性,通过列表框中的每个items的长度来改变。倒数第三行的strlen*9是可以改变的,乘以几都可以,自己试试乘几合适。
温馨提示:答案为网友推荐,仅供参考