如何使用 SendMessage 选择 ListBox、ComboBox 中的项 回复 "倪慧刚" 的问题


const i = 1;

//初始测试数据
procedure TForm1.FormCreate(Sender: TObject);
begin
  ListBox1.Items.CommaText := 'aaa,bbb,ccc';
  ComboBox1.Items.CommaText := 'aaa,bbb,ccc';
end;

//对 ListBox1
procedure TForm1.Button1Click(Sender: TObject);
begin
//  ListBox1.Selected[i] := True;                   {常规方法}
  SendMessage(ListBox1.Handle, LB_SETCURSEL, i, 0); {发送消息}
end;

//对 ComboBox1
procedure TForm1.Button2Click(Sender: TObject);
begin
//  ComboBox1.ItemIndex := i;                        {常规方法}
  SendMessage(ComboBox1.Handle, CB_SETCURSEL, i, 0); {发送消息}
end;

原文地址:https://www.cnblogs.com/del/p/2270667.html