怎样实现在COMBOBOX中输入时将其Items相近的项提前以供用户选择? 就象DELPHI中的CODE IN SIGHT一样?或者更进一步,当输入字符时,不光匹配前面部分,而将Item中所有包含此字串的都先列出来,随着用户继续输入而不断筛选? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 // 定义变量LastKeyPressed: Word; procedure TForm1.ComboBox1KeyDown(Sender: TObject; var Key: Word; Shift: TShiftState); begin LastKeyPressed := Key; // 保存上一个你按的键end; procedure TForm1.ComboBox1Change(Sender: TObject); Var ComboText : String; NewComboText : String; matchindex : integer; begin ComboText := ComboBox1.Text; // 使用户能删除文本; if (LastKeyPressed = VK_DELETE) OR (LastKeyPressed = 8 ) then begin LastKeyPressed := 0; end else begin if ComboBox1.SelStart <> length (ComboText) then // 确定用户此时刚开始打字// 不做任何事,因为这可以让用户在文本中间任意打字else begin // 寻找匹配 matchindex := sendmessage ( ComboBox1.Handle, CB_FINDSTRING , -1, LPARAM(ComboText) ) if matchindex >= 0 then begin ComboBox1.ItemIndex := matchindex NewComboText := ComboBox1.Text; // 选择文本的其余部分: sendmessage ( ComboBox1.Handle, CB_SETEDITSEL , 0, MAKELPARAM(length(ComboText) , word(-1) )); end; end; end; 如何解决控件创建慢的问题 高手请进,有关SQL Server 备份的问题 下载了一个rxlib,怎么用啊(弱弱的问) 曲线(help me!谢谢了) 急急急急delphi7问题 各位高手请帮忙!急!急!急!(在线等待) 在线等 请问誰有TeamSource的序列号 怎样写一个txt文件 小妹?^_^?捉虫:如何动态的创建窗体! 很菜的问题NSAPI是什么??? 可不可以把反含有自己添加的计算字段的TTable中的显示出来的数据写回另一个DB文件中?? 在DELPHI的RichTextEdit控件中,如何实现上、下标的功能。
Shift: TShiftState);
begin
LastKeyPressed := Key; // 保存上一个你按的键
end; procedure TForm1.ComboBox1Change(Sender: TObject);
Var
ComboText : String;
NewComboText : String;
matchindex : integer;
begin
ComboText := ComboBox1.Text;
// 使用户能删除文本;
if (LastKeyPressed = VK_DELETE) OR (LastKeyPressed = 8 ) then begin
LastKeyPressed := 0;
end
else begin
if ComboBox1.SelStart <> length (ComboText) then // 确定用户此时刚开始打字
// 不做任何事,因为这可以让用户在文本中间任意打字
else begin
// 寻找匹配
matchindex := sendmessage ( ComboBox1.Handle, CB_FINDSTRING , -1,
LPARAM(ComboText) )
if matchindex >= 0 then begin
ComboBox1.ItemIndex := matchindex
NewComboText := ComboBox1.Text;
// 选择文本的其余部分:
sendmessage ( ComboBox1.Handle, CB_SETEDITSEL , 0,
MAKELPARAM(length(ComboText) , word(-1) ));
end;
end;
end;