combobox的2个问题(100)

  • 主题发起人 主题发起人 bamfk1023
  • 开始时间 开始时间
B

bamfk1023

Unregistered / Unconfirmed
GUEST, unregistred user!
1、ComboBox在DroppedDown = true 时,鼠标不见 怎么都回不来2、下拉中选中了第三项值(用键盘或者鼠标), 如第三项值为 'cccccc'; 而我在选完以后写入 combobox1.text:='中华人民共和国'; 这个值没有发生变化 是不是要refresh一下,怎么弄怎么比较好?procedure TForm1.ComboBox2Change(Sender: TObject); begin ComboBox2.DroppedDown:=true; ///鼠标不见了 end; procedure TForm1.ComboBox2Select(Sender: TObject); begin ComboBox2.Text:='中华人民共和国'; //如果是鼠标和键盘 这个值不会被设置 Form1.Caption:=ComboBox2.Text; end; 代码简单 什么都没做 combobox 内容可以自己随便加一点 ...
 
2、下拉中选中了第三项值(用键盘或者鼠标), 如第三项值为 'cccccc'; 而我在选完以后写入 combobox1.text:='中华人民共和国'; 这个值没有发生变化 是不是要refresh一下,怎么弄怎么比较好?因为 你change事件里有代码了。这2个事件好像不能同时使用。
 
分开也是一样的
 
你的combobox估计是csDropDownList,你select时,虽然执行了 ComboBox1.Text:='中华人民共和国'';这句话,但是,这种情况下,对text属性的赋值无效,你这句话相当于没有。或者说csDropDownList时,是没法使用text属性的。
 
执行text:='XXXXXXXXXXX';时,实际调用的好像是下面的代码procedure TControl.SetTextBuf(Buffer: PChar);begin Perform(WM_SETTEXT, 0, Longint(Buffer)); Perform(CM_TEXTCHANGED, 0, 0);end;=====================combobox1.text:='ddd';其实就是 ComboBox1.Perform(WM_SETTEXT, 0, Longint(Pchar('ddd'))); ComboBox1.Perform(CM_TEXTCHANGED, 0, 0);
 
用rz控件吧!
 
后退
顶部